program perkalian_matriks;
uses wincrt;
var a,f,k :
array[1..10,1..10] of integer;
b,c,i,j,l,z :
longint; m,n,d,e,g,h:byte;
begin
clrscr;
writeln('program
perkalian 2 matriks');
writeln('masukan
data untuk martiks pertama (m1) ');
write('banyaknya
baris matriks pertama: ');readln (b);
write('banyaknya
kolom matriks pertama: '); readln (c);
for d:=1 to b do
begin
for e:=1 to c
do
begin
write('entri baris ke-',d,'kolom ke-',e,': '); readln (a[d,e]);
end;
end;
for d:= 1 to b
do
begin
for e:= 1 to
c do
begin
write(a[d,e]:7);
end;
writeln;
end;
writeln;
writeln('masukkan data untuk matriks kedua (m2) ');
write('berapa
banyak baris matriks kedua? ');
readln(g);
write('berapa
banyak kolom matriks kedua? '); readln(h);
for i:=1 to g
do
begin
for j:=1 to
h do
begin
write('entri baris ke-',i,'kolom ke ',j,': ');
readln(f[i,j]);
end;
end;
for i:=1 to
g do
begin
for j:=1
to h do
begin
write(f[i,j]:7);
end;
writeln;
end;
writeln;
if c=i then
begin
writeln('m1
x m2:');writeln;
for d:= 1
to b do
begin
for l:=1
to h do
begin
for
e:=1 to c do
begin
for
j:=l to h do
begin
for i:=e to g do
begin
k[d,j]:=k[d,j]+a[d,e]*f[i,j];
if c=e then
begin
write(k[d,j]:7);
end;
i:=g;
end;
j:=h;
end;
end;
end;
writeln;
end;
end else
begin
writeln('maaf?! operasi dari m1 x m2 tidak dapat dilakukan');
writeln('karena kolom m1 (',c,' kolom) tidak sama dengan baris m2(',i,'
baris)');
end;
readln
end.
Tidak ada komentar:
Posting Komentar
Semoga Bermanfaat