1
Matrices
Arreglos Bidimensionales (Matrices)
• Una matriz tiene
renglones y columnas.
• Sus elementos se
referencían por el
nombre de la matriz
seguido de corchetes
indicando renglón ,
columna en donde se
encuentra ese elemento.
5 1 9
8 6 4
3 7 2
0 1 2
0
1
2
Matriz “M”
M[2,1]= 7 M[1,2]= 4
Arreglos Bidimensionales (Matrices)
• Para recorrer, capturar o procesar secuencialmente todos los elementos
de una matriz, se pueden utilizar dos ciclos anidados, uno para los
renglones y otro para las columnas:
for(x=0; x<=2; x++)
{
for (y=0; y<=2; y++)
{
Console.WriteLine("Tecleeel elemento: " + x + "," + y + “:”);
m[x,y] = int.Parse(Console.ReadLine());
}
}
x=0
x<=2
x++
Inicio
F
V
y=0
y<=2
y++
F
V
m[x,y]
1
1
Fin
Matrices en C#
CASO 1: Crear la matriz sin conocer los elementos.
int[,] M = new int [4,4];
“M” es una matriz de 4 renglones y 4 columnas que C# reconoce de la posicion 0 a la 3.
CASO 2: Crear la matriz conociendo los elementos
int[,] m = { {4,2,9},
{0,3,1},
{5,6,7}}; //Matriz de 3 x 3
En este caso se inicializa el valor de los elementos al momento de declarar la matriz.
También puede hacerse desde el programa:
m[0,0] = 4;
m[0,1] = 2;
m[0,2] = 9;
…etc…
2
Ejemplo
static void Main(string[] args)
{
int[,] m = { {4,2,9},
{0,3,1},
{5,6,7}};
for (int x = 0; x <= 2; x++)
{
for (int y = 0; y <= 2; y++)
{
Console.Write(m[x, y] + " ");
}
Console.WriteLine("n");
}
Console.ReadLine();
}
Práctica .-
Operaciones con Matrices
Considerar las siguientes matrices de 3 x 3 que contienen datos
numéricos enteros.
2 1 3
1 0 4
3 2 1
0 1 2
0
1
2
Matriz “M”
4 1 9
1 0 16
9 4 1
0
1
2
Matriz “Cuad”
8 1 27
1 0 64
27 8 1
0
1
2
Matriz “Cubo”
El usuario introduce los números de la matriz “M”
El programa calcula e imprime los numeros de las matrices “CUAD” y “CUBO”
0 1 2 0 1 2
Práctica – Operaciones con matrices
x=0
x<=2
x++
Inicio
F
V
y=0
y<=2
y++
F
V
m[x][y]
cuad[x][y] = m[x][y] * m[x][y]
cubo[x][y] = cuad[x][y] * m[x][y]
1
1
x=0
x<=2
x++
F
V
y=0
y<=2
y++ V
cuad[x][y]
2
2
Fin
x=0
x<=2
x++
F
V
y=0
y<=2
y++ V
cubo[x][y]
4
4
3
3
F
F
Práctica .-
Traspuesta y Diagonal principal de una matriz n x n
Considerar la matriz “M” de 3 x 3 de datos numéricos
enteros introducidos por el usuario.
El programa debe calcular la suma de los elementos de
la diagonal principal y la matriz traspuesta “T”.
2 1 3
1 0 4
3 2 1
0 1 2
0
1
2
Matriz “M”
2 1 3
1 0 2
3 4 1
0 1 2
0
1
2
Matriz “T”
La matriz “T” es la Traspuesta y se obtiene si las columnas de “M” se convierten en
renglones y los renglones de “M” se convierten en columnas. Es decir:
T[y,x] = M[x,y]
Los elementos de la diagonal
Principal son:
M[0,0],M[1,1],M[2,2]
3
Traspuesta y Diagonal principal de una matriz
x=0
x<=2
x++
Inicio
F
V
y=0
y<=2
y++
F
V
m[x,y]
x = y
F V
suma = suma + m[x,y]
t [y,x] = m[x,y]
suma = 0
1
1
suma x=0
x<=2
x++
F
V
y=0
y<=2
y++ V
t [x,y]
2
2
Fin

Matrices en C++

  • 1.
    1 Matrices Arreglos Bidimensionales (Matrices) •Una matriz tiene renglones y columnas. • Sus elementos se referencían por el nombre de la matriz seguido de corchetes indicando renglón , columna en donde se encuentra ese elemento. 5 1 9 8 6 4 3 7 2 0 1 2 0 1 2 Matriz “M” M[2,1]= 7 M[1,2]= 4 Arreglos Bidimensionales (Matrices) • Para recorrer, capturar o procesar secuencialmente todos los elementos de una matriz, se pueden utilizar dos ciclos anidados, uno para los renglones y otro para las columnas: for(x=0; x<=2; x++) { for (y=0; y<=2; y++) { Console.WriteLine("Tecleeel elemento: " + x + "," + y + “:”); m[x,y] = int.Parse(Console.ReadLine()); } } x=0 x<=2 x++ Inicio F V y=0 y<=2 y++ F V m[x,y] 1 1 Fin Matrices en C# CASO 1: Crear la matriz sin conocer los elementos. int[,] M = new int [4,4]; “M” es una matriz de 4 renglones y 4 columnas que C# reconoce de la posicion 0 a la 3. CASO 2: Crear la matriz conociendo los elementos int[,] m = { {4,2,9}, {0,3,1}, {5,6,7}}; //Matriz de 3 x 3 En este caso se inicializa el valor de los elementos al momento de declarar la matriz. También puede hacerse desde el programa: m[0,0] = 4; m[0,1] = 2; m[0,2] = 9; …etc…
  • 2.
    2 Ejemplo static void Main(string[]args) { int[,] m = { {4,2,9}, {0,3,1}, {5,6,7}}; for (int x = 0; x <= 2; x++) { for (int y = 0; y <= 2; y++) { Console.Write(m[x, y] + " "); } Console.WriteLine("n"); } Console.ReadLine(); } Práctica .- Operaciones con Matrices Considerar las siguientes matrices de 3 x 3 que contienen datos numéricos enteros. 2 1 3 1 0 4 3 2 1 0 1 2 0 1 2 Matriz “M” 4 1 9 1 0 16 9 4 1 0 1 2 Matriz “Cuad” 8 1 27 1 0 64 27 8 1 0 1 2 Matriz “Cubo” El usuario introduce los números de la matriz “M” El programa calcula e imprime los numeros de las matrices “CUAD” y “CUBO” 0 1 2 0 1 2 Práctica – Operaciones con matrices x=0 x<=2 x++ Inicio F V y=0 y<=2 y++ F V m[x][y] cuad[x][y] = m[x][y] * m[x][y] cubo[x][y] = cuad[x][y] * m[x][y] 1 1 x=0 x<=2 x++ F V y=0 y<=2 y++ V cuad[x][y] 2 2 Fin x=0 x<=2 x++ F V y=0 y<=2 y++ V cubo[x][y] 4 4 3 3 F F Práctica .- Traspuesta y Diagonal principal de una matriz n x n Considerar la matriz “M” de 3 x 3 de datos numéricos enteros introducidos por el usuario. El programa debe calcular la suma de los elementos de la diagonal principal y la matriz traspuesta “T”. 2 1 3 1 0 4 3 2 1 0 1 2 0 1 2 Matriz “M” 2 1 3 1 0 2 3 4 1 0 1 2 0 1 2 Matriz “T” La matriz “T” es la Traspuesta y se obtiene si las columnas de “M” se convierten en renglones y los renglones de “M” se convierten en columnas. Es decir: T[y,x] = M[x,y] Los elementos de la diagonal Principal son: M[0,0],M[1,1],M[2,2]
  • 3.
    3 Traspuesta y Diagonalprincipal de una matriz x=0 x<=2 x++ Inicio F V y=0 y<=2 y++ F V m[x,y] x = y F V suma = suma + m[x,y] t [y,x] = m[x,y] suma = 0 1 1 suma x=0 x<=2 x++ F V y=0 y<=2 y++ V t [x,y] 2 2 Fin