Kód: Vybrať všetko
program nasobenie_matic;
uses crt;
var m1,m2,m3: array [1..12,1..12] of integer;
k,l,f,m,i,j,t,z :integer; {k,l,f,m - velkost matic}
y :integer; {suradnice graf. kurzoru}
BEGIN
clrscr;
writeln('********* NASOBENIE MATIC *********');writeln;
write('Zadaj velkost prvej matice: x ');
gotoxy(30,3); read(k); gotoxy(34,3); read(l);
write('Zadaj clenov 1. matice: ');
writeln; y:=wherey;
for i:=1 to k do writeln(#179:2,#179:l*4); {vykreslenie mriezky}
for i:=1 to k do {vlozenie prvkov do matice}
for j:=1 to l do
begin
gotoxy(4*j,i+4);
read(m1[i,j]);
end;
writeln; write('Zadaj velkost druhej matice: x '); {druha matica}
y:=wherey; gotoxy(34,y);read(f); read(m);
if l<>f then writeln('Nema riesenie') else
write('Zadaj clenov 2. matice: ');
writeln; y:=wherey;
for i:=1 to f do writeln(#179:2,#179:m*4); {vykreslenie mriezky}
for i:=1 to f do {vlozenie prvkov do matice}
for j:=1 to m do
begin
gotoxy(4*j,y+i-1);
read(m2[i,j]);
end;
writeln; m3[1,1]:=0; {zaciatok algoritmu nasobenia matic}
for i:=1 to k do
for t:=1 to f do
for j:=1 to l do
for z:=1 to m do
m3[i,t]:=(m3[i,t]+m1[i,j]*m2[m,t]);
writeln('Sucin matic je matica typu: ',k,' x ',m);
y:=wherey;
for i:=1 to k do writeln(#179:2); {vykreslenie mriezky}
for i:=1 to k do {vypisanie vyslednej matice}
begin
for j:=1 to m do
begin
gotoxy(4*j,y+i-1);
write(m3[i,j]);
end;
write(#179:2);
end;
readkey;
END.