Ejercicio 016: Multiplicar dos matrices m*m.
Entrada: Tamaño de las matrices A y B y llenado de las mismas.
Salida: Matriz multiplicada.
using System;
public class C_016 {
public static void Main(string[] args) {
int m, filas, columnas, res;
Console.WriteLine("¿De qué tamaño serán las matrices?");
m = int.Parse(Console.ReadLine());
Console.WriteLine("Las matrices serán " + m + "*" + m);
int[,] matrizA = new int[m,m];
int[,] matrizB = new int[m,m];
int[,] matrizAB = new int[m,m];
filas = columnas = m;
// Se llenan las matrices
Console.WriteLine("Ingresa los números de las matrices");
Console.WriteLine("Matriz A");
for (int i=0; i < m; i++) {
for (int j=0; j < m; j++) {
Console.WriteLine("Ingresa el valor " + i + "-" + j);
matrizA[i,j] = int.Parse(Console.ReadLine());
}
}
Console.WriteLine("Matriz B");
for (int i=0; i < m; i++) {
for (int j=0; j < m; j++) {
Console.WriteLine("Ingresa el valor " + i + "-" + j);
matrizB[i,j] = int.Parse(Console.ReadLine());
}
}
// Se multiplican las matrices
for (int i=0; i < filas; i++) {
for (int j=0; j < columnas; j++) {
res = 0;
for (int k=0; k < filas; k++) {
res += matrizA[i,k] * matrizB[k,j];
}
matrizAB[i,j] = res;
}
Console.WriteLine("\n");
}
// Se muestra la matriz multiplicada
Console.WriteLine("MatrizAB");
for (int i=0; i < filas; i++) {
for (int j=0; j < columnas; j++) {
Console.Write(matrizAB[i,j] + " \t");
}
Console.WriteLine();
}
}
}
■ En otros lenguajes:
• Pseudocódigo
• Java_016 ✓
• Pascal_016 ✓
No hay comentarios:
Publicar un comentario