Larik Multi Dimensi
Larik Multi Dimensi
Larik
multi dimensi adalah larik yang bertipe larik, artinya ada
pendeklarasian sebuah larik yang mempunyai tipe data larik juga.
Dalam array multidimensi terdiri atas baris (row) dan kolom (column). Index pertama adalah baris dan yang kedua adalah kolom .
BENTUK UMUM :
Type nama_array =ARRAY[bawah..atas, bawah..atas] of tipe_data;
var variabel_array : nama_array;
var variabel_array : nama_array;
atau dengan menggunakan statemen var :
var variabel_array : ARRAY[bawah..atas, bawah..atas] of tipe_data;
Pernyataan berikut membentuk suatu array integer dengan nama bilangan , 10 x 10 elemen (100).
type matriks = ARRAY [1..10, 1..10] of integer;
var AKU: matriks;
var AKU: matriks;
untuk memasukkan tiap elemen maka, diperlukan suatu procedure dengan mempergunakan struktur pengulangan for ...do tersarang seperti berikut:
procedure ISI_MATRIK(AKU:matriks; m,n:integer);
var
var
i,j: integer; {faktor pengulang}
begin
for i:=1 to m do
begin
for i:=1 to m do
begin
for j:=1 to n do
begin
read(A[i,j]);
end;
readln;{ini memungkinkan kita menulis tiap baris elemen}
readln;{ini memungkinkan kita menulis tiap baris elemen}
end;
untuk menampilkan tiap elemen maka, digunakan struktur pengulangan for ...do tersarang seperti berikut
procedure TULIS_MATRIK(AKU : matriks; m,n:integer);
var
var
i,j: integer; {faktor pengulang}
begin
for i:=1 to m do
begin
begin
for j:=1 to n do
begin
write(A[i,j]:6);
end;
writeln; {ini memungkinkan kita menulis elemen dalam baris dan kolom }
begin
write(A[i,j]:6);
end;
writeln; {ini memungkinkan kita menulis elemen dalam baris dan kolom }
end;
end;
MATRIK
Sebagai perwujudan dari array dua dimensi, operasi aritmatika seperti penjumlahan, perkalian, dan pengurangan bisa dilakukan.
Contoh.- Mendefinisikan Elemen
Program OPERASI_MATRIK;
uses wincrt;
type matrik=array[1..100,1..100] of real;
var
m,n, p, q: integer; {dimensi dari matrik}
A,B,C: matrik; {matrik A, B sebagai input, C sebagai hasil}
uses wincrt;
type matrik=array[1..100,1..100] of real;
var
m,n, p, q: integer; {dimensi dari matrik}
A,B,C: matrik; {matrik A, B sebagai input, C sebagai hasil}
- Membaca Elemen Matrik
procedure bacamatrik(var A:matrik; m,n:integer);
var
var
i,j: integer; {faktor pengulang}
begin {read}
begin {read}
for i:=1 to m do
begin {do}
begin {do}
for j:=1 to n do
read(A[i,j]);
readln;
read(A[i,j]);
readln;
end; {do}
end; {read}
- Menampilkan Elemen Matrik
procedure tulismatrik(A:matrik; m,n:integer);
var
i,j: integer; {faktor pengulang}
begin {write}
var
i,j: integer; {faktor pengulang}
begin {write}
for i:=1 to m do
begin {tiap baris}
begin {tiap baris}
writeln;
for j:=1 to n do
write(A[i,j]:6:2);
for j:=1 to n do
write(A[i,j]:6:2);
end; {tiap baris}
writeln;
writeln;
end; {write}
- Penjumlahkan Matrik
procedure check_matrik(A,B,C:matrik; m,n,p,q:integer);
var i,j : integer;
begin
var i,j : integer;
begin
if (m=p) and (n=q) then
begin
begin
for i:=1 to m do
begin
for j:=1 to n do
begin
begin
C[m,n]=A[m,n]+B[m,n])
end;
end;
end;
end
else
writeln('DIMENSI MATRIK TIDAK COCOK')
else
writeln('DIMENSI MATRIK TIDAK COCOK')
end;
- Pengurangan Matrik
procedure check_matrik(A,B,C:matrik; m,n,p,q:integer);
var i,j : integer;
begin
var i,j : integer;
begin
if (m=p) and (n=q) then
begin
for i:=1 to m do
begin
for j:=1 to n do
begin
C[m,n]=A[m,n]- C[m,n])
end;
begin
C[m,n]=A[m,n]- C[m,n])
end;
end;
end
else
writeln('DIMENSI MATRIK TIDAK COCOK')
end;
- Perkalian Matrik
procedure perkalian_matrik(A,B,C:matrik; m,n,p,q:integer);
var i,j, k : integer;
C1: matrik;
begin
var i,j, k : integer;
C1: matrik;
begin
if (n=p) then
begin
for i:=1 to m do
begin
for j:=1 to p do
begin {inner product}
begin {inner product}
C1[i,j]:=0;
for k:=1 to n do
C1[i,j]:=C1[i,j]+A[i,k]*B[k,j];
C1[i,j]:=C1[i,j]+A[i,k]*B[k,j];
end; {inner product}
end;
n:=q;
for i:=1 to m do
for j:=1 to n do
C[i,j]:=C1[i,j];
n:=q;
for i:=1 to m do
for j:=1 to n do
C[i,j]:=C1[i,j];
end
else
writeln('DIMENSI MATRIK TIDAK COCOK')
writeln('DIMENSI MATRIK TIDAK COCOK')
end;
- Transpose Matrik
procedure Transpose(A,B:matrik; m,n,p,q:integer);
var i,j : integer;
begin
var i,j : integer;
begin
for i:=1 to n do
begin
for j:=1 to m do
begin
B[m,n]=A[n,m]
end;
end;
end;
end;
-. Mencari Elemen yang Kosong pada Matrik
procedure CHECK_ZERO_ELEMEN(A,matrik; m,n:integer);
var i,j:integer;
begin
for i:=1 to m do
var i,j:integer;
begin
for i:=1 to m do
begin
for j:=1 to n do
begin
if B[m,n]= 0 then
writeln (‘terdapat elemen yang kosong’)
else
writeln (‘tidak terdapat elemen yang kosong’)
writeln (‘terdapat elemen yang kosong’)
else
writeln (‘tidak terdapat elemen yang kosong’)
end;
end;
end;
0 komentar:
Posting Komentar
Harap Memberikan Komentar Dengan Menggunakan kata-kata yang Selayaknya Jangan SPAM Ya