Posted by Ketut Joko on Wednesday, March 23, 2011
Under: array
Berikut merupakan kode perkalian 2 matrix :
uses crt; var a,f,k:array[1..100,1..100] of integer; b,c,i,j,l,z:longint; m,n,d,e,g,h:byte; begin clrscr; write(' Program Perkalian 2 Matriks');readln;writeln;writeln; writeln('Masukkan data untuk matriks pertama (M1)'); writeln; write('banyaknya baris matriks pertama: '); readln(b); write('banyaknya kolom matriks pertama: '); readln(c);writeln; 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;writeln; writeln('M1:');writeln; for d:= 1 to b do begin for e:= 1 to c do begin write(a[d,e]:7); end;writeln;writeln;end;writeln;writeln; writeln('Masukkan data untuk matriks kedua (M2)');writeln; write('berapa banyak baris matriks kedua? '); readln(g); write('berapa banyak kolom matriks kedua? '); readln(h);writeln; 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;writeln; writeln('M2:');writeln; for i:= 1 to g do begin for j:= 1 to h do begin write(f[i,j]:7); {copy right Live2living.co.nr} end;writeln;writeln;end;writeln;writeln; writeln('Tekan Enter Untuk Melihat Hasil Operasi dari M1 x M2!');readln; 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;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.