Rabu, 28 Desember 2016

Program Pascal - Penjumlahan Matrik, Pengurangan Matrik, dan Perkalian Matrik (Array dan Record)

program MATRIK;
uses crt;
type data = array[1..100,1..100] of integer;
var matrikI,matrikII : data;
    baris,kolom,pil : integer;

procedure isimatrik;
var  i,j : integer;
begin
     writeln('MATRIK I');
     write('Masukan banyak baris = ');readln(baris);
     write('Masukan banyak kolom = ');readln(kolom);
     for i:=1 to baris do
         for j:=1 to kolom do
             begin
             gotoxy(j*10,i*5);
             readln(matrikI[i,j]);
             end;
     clrscr;
     writeln('MATRIK II');
     write('Masukan banyak baris = ');readln(baris);
     write('Masukan banyak kolom = ');readln(kolom);
     for i:=1 to baris do
         for j:=1 to kolom do
             begin
             gotoxy(j*10,i*5);
             readln(matrikII[i,j]);
             end;
end;

procedure jumlahmatrik(m1,m2 : data);
var hasil : data;
    i,j   : integer;
begin
     for i:=1 to baris do
         for j:=1 to kolom do
             begin
                 hasil[i,j]:=m1[i,j]+m2[i,j];
             end;
     clrscr;
     writeln('Hasil Penjumlahan MATRIK');
     for i:=1 to baris do
         for j:=1 to kolom do
             begin
             gotoxy(j*10,i*5);
             write(hasil[i,j]);
             end;
     readln;
end;

procedure kurangmatrik(m1,m2 : data);
var hasil : data;
    i,j   : integer;
begin
     for i:=1 to baris do
         for j:=1 to kolom do
             begin
                 hasil[i,j]:=m1[i,j]-m2[i,j];
             end;
     clrscr;
     writeln('Hasil Penngurangan MATRIK');
     for i:=1 to baris do
         for j:=1 to kolom do
             begin
             gotoxy(j*10,i*5);
             write(hasil[i,j]);
             end;
     readln;
end;

procedure kalimatrik(m1,m2 : data);
var hasil : data;
    i,j,z   : integer;
    begin
     for i:=1 to baris do
         for j:=1 to kolom do
             begin
                  hasil[i,j]:=0;
                  for z:=1 to baris do
                  hasil[i,j]:=hasil[i,j]+matrikI[i,z]*matrikII[z,j];
             end;
     clrscr;
     writeln('Hasil Perkalian MATRIK');
     for i:=1 to baris do
         for j:=1 to kolom do
             begin
             gotoxy(j*10,i*5);
             write(hasil[i,j]);
             end;
     readln;
end;

BEGIN
   repeat
     Clrscr;
     writeln;
     writeln;
     writeln('--->>> MENU UTAMA <<<---');
     writeln;
     writeln('[1] Penjumlahan Matrik');
     writeln('[2] Pengurangan Matrik');
     writeln('[3] Perkalian Matrik');
     writeln('[4] Exit Program');
     writeln;
     write('Pilihan = ');readln(pil);
     clrscr;
     case pil of
     1 : begin
              isimatrik;
              jumlahmatrik(matrikI,matrikII);
         end;
     2 : begin
              isimatrik;
              kurangmatrik(matrikI,matrikII);
         end;
     3 : begin
              isimatrik;
              kalimatrik(matrikI,matrikII);
         end;
     4 : ;
     end;
   until pil=4;
end.
Read More

(PASCAL) PROGRAM PENJUMLAHAN PADA MATRIKS

(PASCAL) PROGRAM PENJUMLAHAN PADA MATRIKS


Saya akan membagikan sedikit pengetahuan yang saya dapatkan di tempat saya kuliah, ini adalah program penjumlahan pada matriks :








Soal :
Buatlah program untuk melakukan Penjumlahan Matriks dengan ukuran a x a, dimana menginput nilai menggunakan fungsi/prosedur.
contoh :
Input :
                                Ukuran matriks (a x a) : 3
                                 A  =                3  3  1            B  =         8  2  3
                                                         2  5  4                            4  1  1
                                                         5  4  2                            2  7  1
                                Output : A+B  = 11  5   4
                                                           6   6   5
                                                                               7  11 3


 
Berikut programnya :
program matrik;
uses crt;
type data = array[1..10,1..10] of integer;
var matrikI,matrikII : data;
    baris,kolom,pil : integer;
    Ul : char;

procedure isimatrik;

var i,j : integer;

begin

 write ('Ukuran Matriks (a x a) : '); readln(baris);
 writeln;
     writeln ('A =');
     writeln;
      for i:=1 to baris do
         begin
         for j :=1 to baris do
             begin
                  gotoxy (j*5,i+8);
                  read(matrikI[i,j]);
             end;
         end;
     writeln;
     writeln('B =');
     writeln;
     for i:=1 to baris do
         begin
         for j:=1 to baris do
             begin
                  gotoxy(j*5,i+12);
                  read(matrikII[i,j]);
             end;
         end;
end;

procedure jumlahmatrik(m1,m2 : data; baris,kolom :integer);

var hasil : data;
    i,j : integer;
begin
     for i:=1 to baris do
         for j:=1 to baris do
             begin
                  hasil[i,j]:=m1[i,j]+m2[i,j];
             end;
     writeln;
     writeln('Output : A+B = ');

     for i:=1 to baris do

         for j:=1 to baris do
             begin
                  gotoxy(j*5,i+17);
                  write(hasil[i,j]);
             end;
readln;
end;

begin

clrscr;
  writeln('Program : Penjumlahan pada Matriks');
  writeln('Oky Wahyudi Defiery');
  writeln('160210197 / TA-16-17');
  writeln('Putera Batam University');
  writeln;
  writeln;
  isimatrik;
  jumlahmatrik(matrikI,matrikII,baris,kolom);
readln;
end.

Semoga bermanfaat bagi teman" yang sudah melihat, dan terima kasih sudah berkunjung ke blogger saya.
Read More

Disqus Shortname

Comments system