Perkalian Matriks

You might also like

Download as doc, pdf, or txt
Download as doc, pdf, or txt
You are on page 1of 10

Perkalian Matriks

Program Perkalian_Matriks; Uses cr; Var m,n : integer; Matriks_A : array [1..m,1..n] of integer; Matriks_B : array [1..m,1..n] of intger; Hasil : array [ 1..m,1..n] of integer; Begin Clrscr; {Input Matrik A} For m:= 1 to m do Begin For n:= 1 to n do Begin Write(input Baris-,m,Kolom-,n, :);readln(Matriks_A[m,n]; End; End; {Input Matrik B}

For m:= 1 to m do Begin For n:= 1 to n do Begin Write(input Baris-,m,Kolom-,n, :);readln(Matriks_B[m,n]; End; End; Clrscr; Proses Hasil For m:= 1 to m do Begin For n:= 1 to n do Begin For k:= 1 to m do Hasil[m,n]:=0; Hasil[m,n]:=Hasil[m,n] + matriks_A[m,n] * matriks_B[m,n]; Write(Hasil[m,n]:6);radln(Hasil[m,n]); End; Writeln;

End; Readln; Writeln(Tekan Enter!!!......);readkey; End.

Penjumlahan Matriks
Program Penjumlahan_Matriks; Uses crt; Var m,n : integer; Matriks_A: array [1..m,1..n] of ineger; Matriks_B: array [1..m,1..n] of integer; Hasil : array [1..n,1..m] of integer; Begin Clrscr; { input matrik A }; for m:= 1 to m do begin for n:= 1 to n begin

write( input Baris-,m,Kolom-,n, :);readln(Matrik[m,n]); end; end; { input matrik B }; for m:= 1 to m do begin for n:= 1 to n do begin write( input Baris-,m,Kolom-,n, :);readln(Matrik[m,n]); end; end; PROSES HASIL for m:= 1 to m do begin for n:= 1 to n do begin Hasil[m,n] := Matriks_A[m,n] + Matriks_B[m,n]; Write(Hasil[m,n]:6);readln(Hasil[m,n]); end;

writeln; end; readln; writeln(Tekan Enter!!!);readkey; end.

Program Transpose_Matriks; Uses crt; Var m,n : integer; Matriks_A: array [1..m,1..n] of ineger; Hasil : array [1..n,1..m] of integer; Begin Clrscr; { input matrik A }; for m:= 1 to m do begin for n:= 1 to n do begin write( input Baris-,m,Kolom-,n, :);readln(Matrik[m,n]); end;

end; for m:= 1 to n do begin for n:= 1 to m do begin Hasil[m,n] := Matriks_A[n,m]; Write(Hasil[m,n]:6);readln(Hasil[m,n]); end; writeln; end; readln; writeln(Tekan Enter!!!);readkey; end

atau

Program Pascal Perkalian Matriks


Program Perkalian_Matriks; 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); 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.

Berikut ini adalah code program yang menggunakan bahasa pemrograman Pascal : program matrik; uses wincrt; type data = array[1..5,1..5] of integer; var matrikI,matrikII : data; baris,kolom,pil : integer; procedure isi; var i,j :integer; begin writeln('Penentuan ORDO MATRIK I'); write('Masukan banyak baris matrik I : ');readln(baris); write('Masukan banyak kolom matrik I : ');readln(kolom); for i:=1 to baris do for j:=1 to kolom do begin gotoxy(j*10,i*5); readln(matrikI[i,j]); end; clrscr; writeln('Penentuan ORDO MATRIK II'); write('Masukan banyak baris matrik II : '); readln(baris); write('Masukan banyak kolom matrik II : '); readln(kolom); for i:=1 to baris do for j:=1 to kolom do begin gotoxy(j*10,i*5); readln(matrikII[i,j]); end; end;

procedure jumlah(a1,a2 : data); var hasil:data; i,j:integer; begin for i:=1 to baris do for j:=1 to kolom do begin hasil[i,j]:=a1[i,j]+a2[i,j]; end; clrscr; writeln('Hasil Penjumlahan'); for i:=1 to baris do for j:=1 to kolom do begin gotoxy(j*10,i*5); write(hasil[i,j]); end; end;

procedure kurang(a1,a2 : data); var hasil: data; i,j: integer; begin for i:=1 to baris do for j:=1 to kolom do begin hasil[i,j]:=a1[i,j]-a2[i,j]; end; clrscr; writeln('Hasil Pengurangan'); for i:=1 to baris do for j:=1 to kolom do begin gotoxy(j*10,i*5); write(hasil[i,j]); end; end;

procedure kali(a1,a2 : data); var hasil:data; i,j,z:integer; begin for i:=1 to baris do

for j:=1 to kolom do begin hasil[i,j]:=0; for z:=1 to baris do hasil[i,j]:=hasil[i,j]+matrikI[i,z]*matrikII[z,j]; end; clrscr; writeln('Hasil perkalian'); for i:=1 to baris do for j:=1 to kolom do begin gotoxy(j*10,i*5); write(hasil[i,j]); end; end; begin writeln('MENU'); writeln('(1) Penjumlahan Matrik'); writeln('(2) Pengurangan Matrik'); writeln('(3) Perkalian Matrik'); write('Pilihan = '); readln(pil); clrscr; case pil of 1 :begin isi; jumlah(matrikI,matrikII); end; 2:begin isi; kurang(matrikI,matrikII); end; 3:begin isi; kali(matrikI,matrikII); end; end; end.

You might also like