Jumat, 02 Maret 2012

Program perkalian_matriks;

Uses
  WinCrt;
  var
  A,B,C:Array [1..10,1..10] of integer;
  X,Y,Z,KOLA,BARA,KOLB,BARB:integer;

Begin
  Write ('jumlah kolom A=');readln (KOLA);
  Write ('jumlah baris A=');readln (BARA);
  Write ('jumlah kolom B=');readln (KOLB);
  Write ('jumlah baris B=');readln (BARB);
  If KOLA=BARB THEN BEGIN
  Writeln ('masukan data matrik A');
  FOR X := 1 TO BARA DO
  BEGIN
  FOR Y := 1 TO KOLA DO
  BEGIN
  Write ('A[',X,':',Y,']=');
  Readln (A[X,Y]);
  End;
  End;
  Writeln ('masukan data matrik B');
  FOR X := 1 TO BARB DO
  BEGIN
  FOR Y := 1 TO KOLB DO
  BEGIN
  Write ('B[',X,':',Y,']=');
  Readln (B[X,Y]);
  End;
  End;
  Writeln('Hasil perhitungan');
  FOR X:= 1 TO BARA DO
  BEGIN
  FOR Y:= 1 TO KOLB DO
  BEGIN
  C[X,Y]:=0;
  FOR Z:= 1 TO KOLA DO
  BEGIN
  C[X,Y]:=C[X,Y]+A[X,Z]*B[Z,Y];
  End;
  End;
  End;
  Writeln('A=');
  FOR X := 1 TO BARA DO
  BEGIN
  Write('|');
  FOR Y := 1 TO KOLA DO
  BEGIN
  Write (A[X,Y],' ');
  End;
  Writeln(#8,'|');
  End;
  Writeln('*');
  Writeln('B=');
  FOR X := 1 TO BARB DO
  BEGIN
  Write('|');
  FOR Y := 1 TO KOLB DO
  BEGIN
  Write (B[X,Y],' ');
  End;
  Writeln(#8,'|');
  End;
  Writeln('=');
  Writeln('C=');
  FOR X := 1 TO BARA DO
  BEGIN
  Write('|');
  FOR Y := 1 TO KOLB DO
  BEGIN
  Write (C[X,Y],' ');
  End;
  Writeln(#8,'|');
  End;
  End
  Else BEGIN
  Writeln ('Matrik tidak bisa dikalikan');
  End;
End.
Hasil Running >>>>>>>>>>>>>>>> 

Ada Dua Kemungkinan Jawaban dalam Matriks tersebut  : 





1.  Matriks yang bisa dikalikan , seperti contoh di bawah ini : 



Matriks 2 x 3 dikalikan matriks 3 x 2




2.  Matriks yang tidak bisa dikalikan, seperti contoh di bawah ini : 

 Matriks 2 x 2 dikalikan matriks 3 x 3 




Tidak ada komentar:

Posting Komentar

tolong aq ya