Ejercicio 016: Multiplicar dos matrices mxm.
Entrada: Dos matrices m*m, donde m = 3.
Salida: Las matrices multiplicadas.
Program Pascal_016;
uses
crt;
var
filas, columnas, i, j, k, res, m: integer;
matrizA : array[1..3,1..3] of integer;
matrizB : array[1..3,1..3] of integer;
matrizAB : array[1..3,1..3] of integer;
Begin
m := length(matrizA);
WriteLn('Las matrices serán ', m, '*', m);
filas := length(matrizA);
columnas := length(matrizA);
{Se llenan las matrices}
WriteLn('Ingresa los números de las matrices');
WriteLn('Matriz A');
for i:= 1 to filas do
begin
for j:=1 to columnas do
begin
WriteLn('Ingresa el valor de ', i, '-', j);
ReadLn(matrizA[i][j]);
end;
end;
WriteLn('Matriz B');
for i:= 1 to filas do
begin
for j:=1 to columnas do
begin
WriteLn('Ingresa el valor de ', i, '-', j);
ReadLn(matrizB[i][j]);
end;
end;
{Se multiplican las matrices}
for i:= 1 to filas do
begin
for j:=1 to columnas do
begin
res := 0;
for k:=1 to filas do
begin
res := res + matrizA[i][k] * matrizB[k][j];
end;
matrizAB[i][j] := res;
end;
end;
{Se muestra la matriz multiplicada}
WriteLn('Matriz A*B');
for i:= 1 to filas do
begin
for j:=1 to columnas do
begin
Write(matrizAB[i][j], ' - ');
end;
WriteLn();
end;
ReadKey();
end.
No hay comentarios:
Publicar un comentario