CanonSharp/OpenSet/85_matrix_multiply.pas
jackfiled 89ce313b77 feat: CanonSharp Benchmark. (#4)
Reviewed-on: https://git.bupt-hpc.cn/jackfiled/CanonSharp/pulls/4
Co-authored-by: jackfiled <xcrenchangjun@outlook.com>
Co-committed-by: jackfiled <xcrenchangjun@outlook.com>
2024-08-19 14:37:34 +08:00

57 lines
786 B
ObjectPascal

program main;
var
a,b,res: array[1..100, 1..100] of integer;
n1, m1, n2, m2, i, j, k: integer;
procedure matrix_multiply;
begin
for i := 1 to m1 do
begin
for j := 1 to n2 do
begin
for k := 1 to n1 do
begin
res[i][j] := res[i][j] + a[i][k] * b[k][j];
end;
end;
end;
end;
function getint: integer;
begin
read(getint);
end;
begin
m1 := getint;
n1 := getint;
for i := 1 to m1 do
begin
for j := 1 to n1 do
begin
a[i][j] := getint;
end;
end;
m2 := getint;
n2 := getint;
for i := 1 to m2 do
begin
for j := 1 to n2 do
begin
b[i][j] := getint;
end;
end;
matrix_multiply;
for i := 1 to m1 do
begin
for j := 1 to n2 do
begin
write(res[i][j]);
end;
end;
end.