perkalian matriks (pascal)

berikut ini contoh untuk program perkalian matrik menggunakan pascal....

listing program:

Program kali_matriks;
uses wincrt;
type
matriksint = array [1..20,1..20] of integer;
var
M,a,b : matriksint; p , q: integer;

procedure bacamatriks (var M:matriksint;Nbar,Nkol:integer);
var i,j: integer;
begin
 for i:=1 to Nbar do
   begin
    for j:= 1 to Nkol do
     begin
       write ('M[',i,',',j,'] = ');readln (M[i,j]);
     end;
   end;
end;

procedure tulismatriks (var M:matriksint;Nbar,Nkol:integer);
var i,j : integer;
begin
 for i:= 1 to Nbar do
 begin
   for j:= 1 to Nkol do
     begin
       write (M[i,j]);
     end;
   writeln;
 end;
end;

procedure kalimatriks (a,b:matriksint; Nbar,Nkol : integer);
var
hasil:matriksint;
i,j,z : integer;
begin
  for i := 1 to Nbar do
  begin
   for j := 1 to Nkol do
   begin
   hasil[i,j] := 0;
    for z := 1 to Nbar do
    hasil[i,j] := hasil[i,j]+a[i,z]*b[z,j];
    begin
    gotoxy (j*5,i*23);
    write(hasil[i,j]) ;
    end;
   end;
   writeln;
  end;
end;

begin
  writeln ('MATRIK A ');
  write ('masukkan jumlah baris : '); readln (p);
  write ('masukkan jumlah kolom : '); readln (q);
  bacamatriks (a,p,q);
  write ('A = ');
  writeln;
  tulismatriks (a,p,q);
  writeln;
  writeln ('MATRIKS B ');
  write ('masukkan jumlah baris : '); readln (p);
  write ('masukkan jumlah kolom : '); readln (q);
  bacamatriks (b,p,q);
  write ('B = ');
  writeln;
  tulismatriks (b,p,q);
  writeln ('hasil perkalian matriks adalah : ');
  kalimatriks (a,b,p,q);
end.

berikut hasil running program diatas :

















walaupun pascal mungkin sudah jarang yang digunakan, mungkin ini dapat membantu dalam melatih algoritma pemikiran kalian....

selamat mencoba...
^_^

0 komentar:

Posting Komentar