program matrixszorzas;
const n = 3;
type tomb_tipus =  array[1..n, 1..n] of integer;
procedure kiir(t: tomb_tipus; h: byte);
var i, j: integer;
begin
  for i := 1 to n do begin
    for j := 1 to n do
      write(t[i,j]:h);
    writeln;
  end;
  writeln;
end;
const a: tomb_tipus = ((1,2,4),(5,6,7),(8,9,1));
      b: tomb_tipus = ((2,3,6),(2,3,7),(1,3,0));
var i, j, k, sum: integer; c: tomb_tipus;
begin
  kiir(a, 3);
  kiir(b, 3);
  for i := 1 to n do
    for j := 1 to n do
      begin
        sum := 0;
        for k := 1 to n do
          sum := sum + a[i,k] * b[k,j];
        c[i,j] := sum;
      end;
  kiir(c, 4);
  readln;
end.