You are on page 1of 3

Zona C# TM

ZONA C#
Contáctanos:

carloslecaro@hotmail.es

Asesor.- Ángel España


Contáctanos:
www.compunet.byethost3.com
arel.setnet@hotmail.com
TITULO.-PRODUCTO O MULTIPLICACION DE MATRICES [ ] x[ ] en C#
Este blog se lo realizo con el fin de dar a conocer el desarrollo de la multiplicación de Matrices convirtiéndolo en
Lenguaje de programación, pero antes debemos saber cuál es su Resolución matemática.

1ero.- La multiplicación o producto de Matrices tiene su regla de resolución por el cual


tenemos que aplicarla.
El número de columnas de la primera matriz, debe ser igual al número de filas de la segunda matriz.

Regla para Resolver.-

La primera fila de la Matriz A por la primera Columna de la Matriz B siguiente

La primera fila de la Matriz A por la segunda columna de la Matriz B luego

La Segunda fila de la Matriz A por la primera Columna de la Matriz B luego sigue

La Segunda fila de la Matriz A por la segunda Columna de la Matriz B después

La tercera fila de la Matriz A por la primera Columna de la Matriz B siguiente

La tercera fila de la Matriz A por la segunda Columna de la Matriz B etc etc... y Listo!!..

2do.- Multiplicación de Matrices (Operación Matemática)


Su desarrollo en el siguiente Ejemplo:

Matriz A Matriz B

2 8 4 3 9

7 3

5 9 1 6 6

2(4) + 8(1) 2(3)+8(6) 2(9)+8(6)

AxB = 7(4) + 3(1) 7(3)+3(6) 7(9)+3(6)

5(4) + 9(1) 5(3)+9(6) 5(9)+9(6)

Resultado.-

16 54 66

AxB= 31 39 81

29 69 99
Codigo de Programacion C# Sharp Develop

class MainClass
{
public static void Main()
{
Console.WriteLine("PRODUCTO O MULTIPLICACION DE MATRICES");
//MATRIZZ [1]
Console. WriteLine ( "[Matriz[1] A]" );//Muestra al usuario llenar la matriz 1
Console. Write ( "Inserte el Nº de Filas: " ) ;
int f1 = int . Parse ( Console. ReadLine ( ) ) ;//Captura numero de Filas de matriz 1
Console. Write ( "Inserte el Nº de Columnas: " ) ;
int c1 = int . Parse ( Console. ReadLine ( ) ) ;//Captura numero de Columnas de matriz
1
//MATRIZZ [2]
Console. WriteLine ( "\n [Matriz[2] B]" ) ;//Muestra al usuario llenar la matriz 2
Console. Write ( "Inserte el Nº de Filas: " ) ;//Muestra al usuario llenar el numero de
Filas
int f2 = int . Parse ( Console. ReadLine ( ) );//Captura numero de Filas de matriz 2
Console. Write ( "Inserte el Nº de Columnas: ");
int c2 = int . Parse ( Console. ReadLine ( ) );//Captura numero de Columnas de matriz 2
//DECLARACION DE LAS MATRICES 1 Y 2
//Las filas y columnas se suman +1 para empezar desde posicion 1
int [ , ] Matriz1 = new int [ f1 + 1 , c1 + 1 ];
int [ , ] Matriz2 = new int [ f2 + 1 , c2 + 1 ]; //Matriz 2
int [ , ] Multiplicacion = new int [ f1 + 1 , c2 + 1 ] ;//Matriz para la multiplicacion
//CONDICIONES
//Si la columna de la matriz 1 es igual al numero de filasde la matriz 2
if ( c1 == f2 ) {
//Empezando a llenar la Matriz 1
Console. WriteLine ( " \n Datos [Matriz 1]: " ) ;
for ( int i = 1 ; i <= f1 ; i ++ ) {
for ( int j = 1 ; j <= c1 ; j ++ ) {
Console. Write ( "Ingresa Dato (Fila: {0} - Columna: {1}): " , i, j ) ;
Matriz1 [ i, j ] = int . Parse ( Console. ReadLine ( ) ) ; } }

//Empezando a llenar las Matriz 2


Console. WriteLine ( "Datos [Matriz 2]: " ) ;
for ( int i = 1 ; i <= f2 ; i ++ ) {
for ( int j = 1 ; j <= c2 ; j ++ ) {
Console. Write ( "Ingresa Dato (Fila: {0} - Columna: {1}): " , i, j ) ;
Matriz2 [ i, j ] = int . Parse ( Console. ReadLine ( ) ) ;
} }
//Multiplicando las 2 matrices
for ( int i = 1 ; i <= f1 ; i ++ ) {
for ( int j = 1 ; j <= c2 ; j ++ ) {
Multiplicacion [ i, j ] = 0 ;
for ( int z = 1 ; z <= c1 ; z ++ ) {
Multiplicacion [ i, j ] = Matriz1 [ i, z ] * Matriz2 [ z, j ] + Multiplicacion [ i,
j ] ;
} } }
Console. WriteLine ( "Multiplicacion de 2 Matrices" ) ;
for ( int i = 1 ; i <= f1 ; i ++ ) {
for ( int j = 1 ; j <= c2 ; j ++ ) {
Console. Write ( "{0} " , Multiplicacion [ i, j ] ) ; //Muestra el resultado total
}
Console. WriteLine ( ) ;
//Si la columna de la matriz 1 no es igual al numero de filasde la matriz 2 no se puede
multiplicar
} } else { Console. WriteLine ( "Error: No se puede multiplicar las matrices" + "
Columnas: {0}! = Filas: {1}" , c1, f2 ) ;
}
Console. Read ( ) ;
}
}
}

You might also like