Anda di halaman 1dari 5

Program Perkalian Matriks

Bentuk Perkalian Matriks

Logika Perkalian Matriks:

Perkalian Matriks dilakukan dengan cara mengalikan elemen kolom dari matrik A dengan elemen
baris dari matriks B. Oleh sebab itu, proses perkalian dilakukan secara bertahap.

Misalnya C11 = a11xb11 + a12xb21.

Proses untuk mendapatkan hasil perkalian di atas adalah sebagai berikut :


1. Tentukan nilai c11 = 0
2. Hitung C11 = C11 + a11xb11
3. Hitung C11 = C11 + a12xb21

Contoh : A x B = C

Menghitung C11:
1. C11=0
2. C11 = C11 + a11xb11, C11 = 0 + 2x2 = 4
3. C11 = c11 + a12xb21, C11 = 4 + 3x1 = 4 + 3 = 7
Hasil C11 sama dengan 7.

Syarat Perkalian :

Matriks A dan B hanya dapat dikalikan jika jumlah Kolom Matriks A = Jumlah Baris Matriks B.

Syarat ini harus periksa terlebih dahulu sebelum melakukan proses input data dari kedua
matriks. Artinya jika n tidak sama dengan p, maka proses input ukuran (ordo) dari matriks harus
diulangi. Fungsi yang dapat digunakan adalah repeat – until dengan flowchart sebagai berikut :
Dalam perkalian matriks, digunakan 3 buah loop karena ada 3 buah indeks yaitu m,
q, dan n atau p, dimana nilai p sama dengan n. Untuk menghitung hasil perkalian,
maka indeks dari C yaitu m dan q digunakan sebagai ordo dari C. Loop pertama
indeks m, loop kedua indeks q dan loop ketiga indeks p atau n.

Algoritma Perkalian Matriks

Berdasarkan cara kerja di atas, maka algoritma perkalian sbb:


1. Buat perulangan i dari i=1 hingga m, lanjutkan ke langkah 2. Jika i>m,
lanjutkan ke langkah 5
2. Buat perulangan j dari j=1 hingga q, lanjutkan ke langkah 3. Jika j>q, ulangi
langkah l.
3. Tentukan nilai awal cij =0
4. Buat perulangan k dari 1 hingga p, hitung hasil perkalian.
C[i,j] = C[i,j] + A[i,k] x B[j,k].
Jika k>p, ulangi langkah 2
5. Selesai

Flowchart Perkalian :
Kode Program

Program Perkalian_Matriks;
uses crt;
var i,j,k,m,n,p,q : integer;
A,B,C,D : array[1..10,1..10] of integer;

Begin
repeat
clrscr;
write('Input Jml Baris Matriks A= ');readln(m);
write('Input Jml Kolom Matriks A= ');readln(n);
write('Input Jml Baris Matriks B= ');readln(p);
write('Input Jml Kolom Matriks B= ');readln(q);
until (p=n);

{Input Data matriks A}


for i:= 1 to m do
for j:= 1 to n do
Begin
write('Input A',i,j,'= ');
readln(A[i,j]);
End;

{Input Data matriks B}


for i:= 1 to n do
for j:= 1 to q do
Begin
write('Input B',i,j,'= ');
readln(B[i,j]);
End;
clrscr;

{Perkalian Matriks}
for i:= 1 to m do
Begin
for j:= 1 to q do
Begin
C[i,j]:=0;
for k:=1 to n do
C[i,j]:=C[i,j] + A[i,k]*B[k,j];
End;
End;

{Cetak Matriks}
writeln('Matriks A');
for i:= 1 to m do
Begin
for j:= 1 to n do
write(A[i,j],' ');
writeln;
End;

writeln('Matriks B');
for i:= 1 to n do
Begin
for j:= 1 to q do
write(B[i,j],' ');
writeln;
End;

writeln('Matriks C');
for i:= 1 to m do
Begin
for j:= 1 to q do
write(C[i,j],' ');
writeln;
End;
readln;
End.

Hasil Program

Jika program dijalankan dengan menginput data matriks A dan B, maka Hasil
perkalian C akan diperoleh seperti tampilan otuput di bawah ini.
Flowchart Lengkap Perkalian Matrik

Semoga bermanfaat.
God bless you all.