OneszAccess

Blog Pribadi dan Sharing Sedikit Pengetahuan

Perkalian Matriks 3x3 dengan delphi atau pascal

Assalamualaikum Wr. Wb.
Salam blogger....
Langsung saja yaa,, lagi malas bikin kata-kata soalnya,,, lagi capek, belum minum kopi lagi,, huuhh..

disini yang digunkakan adalah larik atau array.
Dalam mendeklarasikan sebuah variabel berindeks, selain mendefinisikan tipe larik, juga harus menentukan banyaknya indeks yang akan mengisi larik tersebut, yaitu dengan menuliskan : Array[index] of tipe_data.

Larik padat adalah salah satu bentuk array untuk mengatasi pemakaian memori utama yang besar pada array atau larik umumnya, yaitu dengan menambah kata packet di depan kata array atau larik umumnya.

Larik juga dimungkinkan untuk digunakan pada variabel berindeks yang berdimensi banyak, misalnya untuk dimensi dua adalah : matriks : array[1..100,1..100] of integer, yang artinya matriks tersebut disediakan tempat sebanyak 100 baris dan 100 kolom. (berordo 100X100).

program perkalian_matriks;
{$APPTYPE CONSOLE}
uses
  SysUtils;
const
  maxordo = 3;
type
  ordomatrix = array [1..maxordo, 1..maxordo] of integer;
var
  matA, matB, matC  : ordomatrix;
  loopI, loopJ, loopK, Jum : integer;
  brsA, klmA, brsB, klmB, brsC, klmC : integer;
begin
  brsA := 3; klmA := 3;
  brsB := 3; klmB := 3;
  brsC := 3; klmC := 3;
  writeln ('Masukkan data matriks A');
  for loopI := 1 to brsA do
      for loopJ := 1 to klmA do
      begin
        write ('data [',loopI,',',loopJ,']=');
        readln (matA[loopI, loopJ])
      end;
  writeln ('Masukkan data matriks B');
      for loopI := 1 to brsB do
        for loopJ := 1 to klmB do
        begin
          write ('data [',loopI,',',loopJ,']=');
          readln (matB[loopI, loopJ])
        end;
  writeln ('Hasil Perkalian matriks C=A*B');
  for loopI := 1 to brsA do
    for loopJ:= 1 to klmB do
    begin
      jum:=0;
      for loopK := 1 to brsB do
 jum := jum + matA[loopI,loopK]*matB[loopK,loopJ];        
matC[loopI,loopJ]:= jum;
      end;
  writeln ('Matriks A');
      for loopI := 1 to brsA do
      begin
        for loopJ := 1 to klmA do
        write (matA[loopI, loopJ]:3); writeln;
      end;
      writeln ('Matriks B');
      for loopI := 1 to brsB do
      begin
        for loopJ := 1 to klmB do
        write (matB[loopI, loopJ]:3); writeln;
      end;
      writeln ('Matriks C');
      for loopI := 1 to brsC do
      begin
        for loopJ := 1 to klmC do
        write (matC[loopI, loopJ]:3); writeln;
      end;
readln;
  { TODO -oUser -cConsole Main : Insert code here }
end.
 


Selamat beraktifitas
Semoga bermanfaat
Have Fun

Sumber:
Supriyono dan Farikhah Indriani. 2007. Modul Praktikum Algoritma Pemrograman. Yogyakarta: Universitas Islam Indonesia
0 Komentar untuk "Perkalian Matriks 3x3 dengan delphi atau pascal"

Kami Menerima Saran dan Kritikan yang bersifat MEMBANGUN
Tinggalkan Komentar anda disini...

 
Copyright © 2014 OneszAccess - All Rights Reserved
Template By Catatan Info