Program dan Flowchart Perkalian Matriks Dengan Bahasa Pascal
1 of 5
Downloaded 52 times
More Related Content
Program dan Flowchart Perkalian Matriks
1. 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 :
2. 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 :
3. 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
4. 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.