Documente Academic
Documente Profesional
Documente Cultură
Permite administrar un conjunto de datos de un mismo tipo con una sola variable.
En los vectores, los datos se guardan uno a continuación del otro y ocupan una posición entera
consecutiva a partir de 0.
a [7 ]
0 a [0]
1 a [1]
2
3
4
5
6 a [6]
En las matrices, los datos se guardan en forma de tabla (filas x columnas) donde cada fila es un
vector del tamaño que indique las columnas y cada columna es un vector del tamaño que indique las
filas.
m[5][4]
COLUMNAS
0 1 2 3
F 0
I
1
L 2
A
S 3
DECLARACIÓN:
Ejemplo de vectores:
int a[7];
double b[10];
char c[100];
Ejemplo de matrices:
int m[5][4]; // 5 filas, 4 columnas
double n[10][10]; // 10 filas, 10 columnas
char x[20][30]; // 20 cadenas de 30 caracteres cada una
Vectores:
int x [ ] = {2,70,18,15}
Matrices:
ACCESO DE DATOS:
Ejemplo:
Matrices: variable[fila][columna]
Ejemplo:
RECORRIDO
Ejemplo:
// forma ascendente
for (int i = 0; i<4; i++)
cout<< x[i]<<endl;
// forma descendente
for( int i = 4; i>= 0; i--)
cout<<p[i]<<endl;
Ejemplo:
PROBLEMA 1:
// declara vector
int a[30];
// funciones
void llenaVector(){
for(int i=0 ; i<30; i++)
a[i]= aleatorio (100,999);
}
void lista(){
for( int i=0 ; i<30; i++)
cout<<“a[”<< i << “]=”<<a[i]<<endl;
void capicuas(){
int c =0;
cout<<”Numeros capicuas que están en el vector”<<endl;
for ( int i = 0; i<30; i++){
if ( escapicua (a[i])){
c++;
cout<<a[I]<<endl;
}
}
cout<<“hay ”<<c<< “ numeros capicuas”<<endl;
}
void primos(){
int c=0;
cout<<”Numeros primos que están en el vector”<<endl;
for( int i = 0; i<30; i++){
if (primo (a[i])){
c++;
cout<<a[i]<<endl;
}
}
cout<<“hay ” <<c<< “ números primos”<<endl;
}
return 1;
else
return 0;
}
void estadística(){
cout<< “Promedio=”<<promedio ()<<endl;
cout<< “des. estandard= ”<< destandar ()<<endl;
cout<< “varianza= ”<< varianza ()<<endl;
}
double promedio(){
double s = 0;
for ( int i = 0; i<30; i++)
s+= (a[i]);
return s/30;
}
double varianza(){
double p= promedio(); suma=0;
for( int i = 0; i<30; i++)
suma+= pow(a[i]-p, 2);
return suma/30;
}
// función principal()
void main(){
llenaVector();
lista();
capicúas();
primos();
estadística();
}
Desarrolle e invoque a la función que ordena en forma ascendente. Luego, modifique la estructura de la
función main() para que las opciones se invoquen a través de un menú de opciones.
PROBLEMA 2:
Considere una matriz de 10 filas por 10 columnas y a través de un menú de opciones realice los
siguientes procesos:
[3] mayor valor, encuentra y muestra el mayor valor y las posiciones (fila,columa) donde se
encuentra.
[4] promedio por fila, determina el promedio de cada fila y lo muestra junto a la matriz
[5] promedio por columna, determina el promedio de cada columna y lo muestra a continuación
de la matriz.
PROPUESTO 1:
Considere los arreglos necesarios, de tamaño 30, para guardar los nombres y cuatro notas con sus
respectivos promedios de cada alumno y a través de un menú de opciones realice lo siguiente:
1. Ingresar , ingresa y guardar los datos de un alumno e inmediatamente muestra en forma
de tabla los datos guardados.
2. Promedios inferiores, cuenta y muestra a los alumnos cuyo promedio sea inferior al
promedio general.
3. Promedios superiores, cuenta y muestra aquellos alumnos cuyo promedio sea igual o
superior al promedio general.
4. Promedio mayor, cuenta y muestra a los alumnos que tengan el más alto promedio.
5. Ordena y muestra a los alumnos por orden de merito descendente.
Dado 2 números enteros, determine la cantidad de veces que se repite cada digito del 0 al nueve en
ambos números ingresados y dibuje un histograma.
2: **
3: *****
4: ****
5: ***
PROPUESTO 3:
PROPUESTO 4:
Considere una matriz de 10 filas por 10 columnas y a través de un menú de opciones realice los
siguientes procesos:
[8] ordena todo por filas, ordena toda la matriz por filas y muestra su contenido
[9] ordena todo por columnas, ordena toda la matriz por columnas y muestra su contenido
[10] desplaza una columna por derecha, la última columna va a la primera y el resto se desplaza
hacia la derecha
[11] desplaza una columna por izquierda, la primera columna va a la ultima y el resto se desplaza
hacia la izquierda