PROGRAM PASCAL contoh Array 2 Dimensi

Array 2 Dimensi

SOAL:

1. Buatlah sebuah program untuk menjumlahkan dua buah matrik menggunakan array dua dimensi dengan ketentuan:

o Syarat dari penjumlahan matrik adalah jumlah ordo matrik A = jumlah ordo matrik B.

o User yang menginputkan ordo matrik.

o User yang menginputkan nilai dari tiap elemen matrik yang ada.

2. Buat program perkalian antara 2 buah matrik dengan menggunakan array dimana nilai tiap elemennya di-inputkan oleh user! Selain itu, perhatikan syarat perkalian antar matrik, yaitu jumlah kolom pada matrik A = jumlah baris pada matrik B!
3. Transpose matrik adalah terjadinya pertukaran tempat antara elemen baris dan elemen kolom dan sebaliknya pada sebuah matrik. Buatlah sebuah program transpose matrik dengan ordo yang ditentukan oleh user sendiri!

JAWABAN:
1. program penjumlahanmatrik;
uses crt;
var
   a,b : array[1..3,1..2] of integer;
   i,j,m,n : integer;
   c : array[1..20,1..20] of integer;

   begin

        clrscr;
               write('Masukan Jumlah Baris : ');readln(m);
               write('MAsukan Jumlah Kolom : ');readln(n);
               writeln;
               writeln('Elemen Matrik Satu');
               for i := 1 to m do
               begin
                    for j := 1 to n do
                    begin
                    write('Masukan Elemen Baris-',i,' Kolom -',j,' : ');
                    readln(a[i,j]);
                    end;
               end;

               writeln('Elemen Matrik Dua');

               for i := 1 to m do
               begin
                    for j := 1 to n do
                    begin
                    write('Masukan Elemen Baris-',i,' Kolom -',j,' : ');
                    readln(b[i,j]);
                    end;
               end;

               for i := 1 to m do

               begin
                    for j :=1 to n do
                    begin
                         c[i,j]:= a[i,j]+b[i,j];
                    end;
               end;

               writeln;


               for i := 1 to m do

               begin
                    for j:= 1 to n do
                    begin
                    write(a[i,j]:4);
                    end;
                    writeln;
               end;
               writeln('+');

               for i := 1 to m do

               begin
                    for j := 1 to n do
                    begin
                    write(b[i,j]:4);
                    end;
                    writeln;
               end;
               writeln('=');
               for i := 1 to m do
               begin
                    for j:= 1 to n do
                    begin
                    write(c[i,j]:4);
                    end;
                    writeln;
               end;
        readln;
   end.
download pascalnya ==>  Disini

2.program perkalian_matrix;
uses crt;

var
a,b,c : array [1..50,1..50] of integer;
i,j,k,x,y,z : integer;

begin
clrscr;
writeln('Matriks A');
       write('Baris : ');readln(x);
       write('Kolom : ');readln(y);
writeln;
writeln;
writeln('Ukuran matriks B');
writeln('Baris : ',y);
write('Kolom : ');readln(z);

for i:=1 to x do
    for j:=1 to y do
    begin
    write('Elemen A[',i,',',j,'] : ');readln(a[i,j]);
    end;
writeln;
for i:=1 to y do
    for j:=1 to z do
    begin
    write('Elemen B[',i,',',j,'] : ');
    readln(b[i,j]);
    end;

for i:=1 to x do
    for j:=1 to z do
        for k:=1 to y do
        c[i,j] := c[i,j] + a[i,k]*b[k,j];
        writeln;
        writeln;
        writeln('Hasil dari perkalian Matriks A dengan Matriks B adalah : ');
    writeln;
            for i:=1 to x do
            begin
                   for j:=1 to z do
                    write(c[i,j],' ');
                    writeln;
            end;

writeln;
readln;
end.
download pascalnya ==> disini

3. program transpose_matrix;
uses crt;
var
a : array [0..100,0..100] of integer;
b : array [0..100,0..100] of integer;
c : array [0..10,0..10] of integer;
ba,ka,bb,kb,i,h,j,k,x,y: integer;
procedure input;
begin
clrscr;
writeln (' Masukan inputan matrix ') ; writeln;
write ('Masukan jumlah baris matriks A: '); readln (ba);
write ('Masukan jumlah kolom matriks A: '); readln (ka);writeln;
write ('Masukan jumlah baris matriks B: '); readln (bb);
write ('Masukan jumlah kolom matriks B: '); readln (kb);
writeln;
writeln ('Masukan komponen data Matriks A');
for h:=1 to ba do
begin
for i:=1 to ka do
begin
write ('Data ke-(',h,',',i,')= ');
readln (a[h,i]);
end;
end;
writeln;
writeln ('Masukan komponen data matriks B');
for j:=1 to bb do
begin
for k:=1 to kb do
begin
write ('Data ke-(',j,',',k,')= ');
readln (b[j,k]);
end;
end;
end;
Procedure cetak;
begin
clrscr; writeln ('Transpose Matrix') ; writeln;
writeln ('Data yang anda masukan adalah :');writeln;
writeln ('Matriks a');
for h:=1 to ba do
begin
for i:=1 to ka do
write (' ',a[h,i],' ');
writeln;
end;
writeln;
gotoxy (27,5);writeln ('Matriks b');
y:=6;
for j:=1 to bb do
begin
x:=27;
for k:=1 to kb do begin
gotoxy(x,y);write (' ',b[j,k],' '); x:=x+3;end; y:=y+1;
end;writeln;
end;
procedure transpose;
begin
writeln ('Transpose matriks a');
for i:=1 to ka do
begin
for h:=1 to ba do
write (' ',a[h,i],' ');
writeln;
end;
writeln;
gotoxy(27,y+2);writeln ('Transpose matriks b');
y:=y+3;
for k:=1 to kb do
begin
x:=27;
for j:=1 to bb do begin
gotoxy(x,y);write (' ',b[j,k],' ');x:=x+3; end;y:=y+1;
writeln;
end;writeln;
end;
begin
clrscr;
input;
cetak;
writeln;
writeln;
transpose;
readln;
end.

download file pascalnya ==> Disini

 


0 Response to "PROGRAM PASCAL contoh Array 2 Dimensi"

Post a Comment