Vous êtes sur la page 1sur 38

MATRICES

Mgter. Ing. Oscar Flores Gutiérrez


f=0
for(int f=0 ; f<=2 ; f++)
{

f=1

} f=2
RECAPITULANDO INDICE
I
String Nombres[i]
nombres[4]={“juan”,”Pedro”,”jose”,”manuel”};
0 juan

for(int i=0;i<4;i++) 1 Pedro


{ 2 jose
cout<<nombres[i]<<endl;
3 manuel
}

 Para recorrer el arreglo nos apoyamos en la variable i


 i toma diferentes valores EN CADA ITERACIÓN y las usamos como INDICES

 Análogamente sucederá con matrices (pero con 2 variables)


for(int f=0 ; f<=2 ; f++) f=0

{ c=0 c=1 c=2

for (int c=0 ; c<=2; c++)


{ f=1

c=0 c=1 c=2


}

f=2

} c=0 c=1 c=2


MATRICES
 Es Array BIdimensional.

 También llamado un vector de vectores .

 La manera de declarar una matriz es C++ es similar a un vector:

00 01

int m[filas][col]; 10 11

 Donde: 20 21

 int es el tipo de dato,


 m es el nombre del todo el conjunto de datos y
 filas: numero de filas y
 col: numero de columnas.
00 01
 int c[2][2];
14 05
10 11
17

00 01 02
juan mari lu Juan fer
 string s[2][3]; 10 11 12

Álvarez Carlos
00 01 02
juan mari lu Juan fer
10 11 12

Álvarez Carlos

 DADA LA MATRIZ DE CADENAS S


 string s[2][3];

 CADA POSICION ES LA COMBINACION DE [FILA] Y [COLUMNA]

“JUAN” ESTA EN LA POSICION [0][0]


“MARI LU” ESTA EN LA POSICION [0][1]

“JUAN FER” ESTA EN LA POSICION [0][2]

“ALVAREZ” ESTA EN LA POSICION [1][0]


Null ESTA EN LA POSICION [1][1]

“CARLOS” ESTA EN LA POSICION [1][2]


PRE- CARGAR TODA UNA MATRIZ

int x[2][2]={ { 14, 5} , {17, } };

00 01
14 05

10 11
17
PRE- CARGAR TODA UNA MATRIZ

int x[2][3]={ { 14, 5,10 } , {17, 0 ,11 } };

00 01 02
14 05
10
10 11 12
17 0
11
int x[3][3]={ { 14, 5 ,5} , {17, 150 ,9} , { 14, 5 } };

f=0
for(int f=0 ; f<=2 ; f++)
c=0 c=1 c=2
{

for (int c=0 ; c<=2; c++)


{ f=1

cout<<x[f][c]<<“ ,”; c=0 c=1 c=2


}

f=2
cout<<endl;
c=0 c=1 c=2
}
RECORRER TODA UNA MATRIZ (CON WHILE)
int x[2][2]={ { 14, 5 } , {17, 150 } }; //Declaro matriz X de tamaño 2,2 y se carga valores

int f,c; //la variable i controlara el bucle (recorriendo desde 0 a 4)

f=0;
while (f<=1)
{ // recorro fila por fila

c=0;
¿COMO SE Muestra el
while(c<=1) C=0 puede
¿Cómo estar
se haría para
contenido? al
que
// recorro lafopor columna
columna
tenga forma
de de tabla?
f=0?
{ Horizontal o verticalmente
cout<<x[f][c]<<“”; //escribimos el contenido de esa posicion

c++ ; //para pasar a la sgte posición

f ++; 00 01
14 05
cout<<endl
10 11
} 17 150
int x[3][3]={ { 14, 5 ,5} , {17, 150 ,9} , { 14, 5 } };

for(int f=0 ; f<=2 ; f++)


{

for (int c=0 ; c<=2; c++)


{
cout<<x[f][c]<<“ ,”;
}

cout<<endl;
}
int S=0;

S=S+m[0][1];
S=S+m[0][2];
int S=0;
..For f
..For c
….S=S+m[f][c];
1. Hacer un program que permita mostrar el contenido de una
matriz 2x2 de enteros (ya cargados previamente)
2. Hacer un program que permita mostrar el contenido de una
matriz 3x3 de enteros (ya cargados previamente) en forma
de matriz
3. Hacer un program que permita mostrar el contenido de una
matriz 2x3 de cadenas(ya cargados previamente)

4. Hacer un programa que permita ingresar los valores de una


matriz 2xn y luego mostrarla
5. Hacer un programa que permita ingresar los valores de una
matriz mxn y luego mostrarla
 Implementar un programa que muestre por
pantalla una simulación de un tablero de ajedrez.
Las casillas blancas las representaremos por un
carácter B y las negras por un carácter N.
Utilizando una matriz. 223 225

 Precargar los valores


 Implementar un programa que muestre por pantalla una
simulación de un tablero de ajedrez. Las casillas blancas
las representaremos por un carácter B y las negras por un
carácter N. Utilizando una matriz.

 Los valores se autogeneraran.


 no se precargan
 Escribir un programa que pida al usuario ingresar el
tamaño (tamaño N) de una matriz cuadrada, y
GENERE los números del 1 al 100.
 Ejemplo: tamaño=3
 Hacer un programa que permita ingresar los 6 primeros
valores de una matriz 3x3 y sume los valores de cada fila. Y
esos resultados se muestren en la ultima columna
 Si fuera de 3x3 el resultado seria:

00 01 02
10 13 23
10 11 12

10 10
20
20 21 22

20 22
02
 Hacer un programa que permita ingresar los 6 primeros
valores de una matriz nxm y sume los valores de cada fila. Y
esos resultados se muestren en la ultima columna
 Si fuera de 3x3 el resultado seria:

00 01 02
10 13 23
10 11 12

10 10
20
20 21 22

20 22
02
 Hacer un programa que permita ingresar los valores 6
primeros valores de una matriz 3x3 y sume los valores de
cada columna. Y eso resultados se muestre en la 3era fila

00 01 02
10 13 12
10 11 12

10 10 12
20 21 22

20 24
23
 Hacer un programa que permita ingresar los valores de una
matriz mxn y sume los valores de cada columna. Y eso
resultados se muestre en la 3era fila
00 01 02
10 13 23
10 11 12

10 20
10
20 21 22

20 02
22
 Hacer un programa que dados una matriz de NxN, cargue
predefinidamente valores y que muestre en la primera
columna los nombres de las personas, en la segunda su salario
y en la tercera su edad
00 01 02
oscar 7500 65
10 11 12

Julian 2500
20
20 21 22

pedro 5000
40
 Hacer un programa que dados una matriz de 3x3, indique si es ,
o no, matriz diagonal
00 01 02
10 13 23
10 11 12

10 20
10
20 21 22

20 10
02

 Una matriz es diagonal si los valores de la diagonal principal


son los mismo
 Hacer un programa que dados una matriz de 3x3, indique si es ,
o no, matriz diagonal INVERSA
00 01 02
10 13 23
10 11 12

10 23 20
20 21 22

23 02
45

 Una matriz es diagonal si los valores de la diagonal principal


son los mismo
 Hacer un programa que dados una matriz de NxN, indique si es
, o no, matriz diagonal INVERSA (usted ingresa N)
00 01 02
10 13 23
10 11 12

10 23 20
20 21 22

23 02
45
 Hacer un programa que dados una matriz de NxN, indique si es
, o no, matriz diagonal (usted ingresa N)
00 01 02
10 13 23
10 11 12

10 20
10
20 21 22

20 10
02

 Una matriz es diagonal si los valores de la diagonal principal


son los mismo
 Hacer un programa que dados una matriz de NxN, muestre en
la primera columna los nombres de las personas, en la
segunda00su salario y en
01
la tercera su02edad
oscar 7500 65
10 11 12

julian 2500
20
20 21 22

pedro 5000
40

 Usted debera ingresar los valores unicamente de edades


 Hacer un programa que dados una matriz de NxN, muestre en
la primera columna los nombres de las personas, en la
segunda su salario y en la tercera su edad
00 01 02
oscar 7500 65
10 11 12

julian 2500
20
20 21 22

pedro 5000
40

 Usted debera ingresar los valores unicamente de nombres


Escribir un programa que pida
datos al usuario los datos de una
matriz de 2x2 y muestra su
traspuesta (el resultado de
intercambiar filas por columnas).
Escribir un programa que pida datos al
usuario los datos de una matriz de 2x2 y
muestra su determinante (pero recordar
que en c++ comienza en 0)
 Escribir un programa que pida datos al usuario los datos de una matriz
de 3x3 y muestra su determinante (pero recordar que en c++ comienza
en 0)
 Escribir un programa que pida al usuario ingresar un número y
una frase, e ingresar cada letra en una matriz. (rellena con x los
espacios sobrantes) Ejemplo: se ingresa 3 y “hola que tal esta”

Vous aimerez peut-être aussi