Nah temen-temen kali ini saya akan membahas tentang Array,,,
apa sih yg di maksud dengan Array itu, yuuuuuk kta simak.... ^_^
Array adalah tipe data terstruktur yang terdiri dari sejumlah komponen-komponen yang mempunyai tipe sama. Komponen-komponen tersebut disebut sebagai komponen type, larik mempunyai jumlah komponen yang jumlahnya tetap. Banyaknya komponen dalam larik ditunjukkan oleh suatu index, dimana tiap komponen di array dapat diakses dengan menunjukkan nilai indexnya atau subskript. Array dapat bertipe data sederhana seperti byte, word, integer, real, bolean, char, string dan tipe data scalar atau subrange. Tipe larik mengartikan isi dari larik atau komponen- komponenya mempunyai nilai dengan tipe data tersebut.
apa sih yg di maksud dengan Array itu, yuuuuuk kta simak.... ^_^
Array adalah tipe data terstruktur yang terdiri dari sejumlah komponen-komponen yang mempunyai tipe sama. Komponen-komponen tersebut disebut sebagai komponen type, larik mempunyai jumlah komponen yang jumlahnya tetap. Banyaknya komponen dalam larik ditunjukkan oleh suatu index, dimana tiap komponen di array dapat diakses dengan menunjukkan nilai indexnya atau subskript. Array dapat bertipe data sederhana seperti byte, word, integer, real, bolean, char, string dan tipe data scalar atau subrange. Tipe larik mengartikan isi dari larik atau komponen- komponenya mempunyai nilai dengan tipe data tersebut.
Contoh:
Var
Untai
: array[1..50] of Integer;
Pada
contoh Array dengan nama untai telah dideklarasikan dengan tipe integer, dengan
jumlah elemen maksimum 50 elemen, nilai dari elemen array tersebut diatas harus
bertipe integer.
Contoh
Program :
Program
Contoh_Array_Input;
Uses Crt;
Var
Bilangan :
array[1..50] of Integer;
Begin
ClrScr;
Bilangan[1]:=3;
Bilangan[2]:=29;
Bilangan[3]:=30;
Bilangan[4]:=31;
Bilangan[5]:=23;
Writeln('nilai
varibel bilangan ke 3 =',Bilangan[3]);
Readln;
End.
Array juga dapat
dideklarasikan bersama dengan tipe yang beragam seperti contoh dibawah ini :
Program
Contoh_Deklarasi_Array_Beragam;
Uses Crt;
Var
NPM : array[1..20]
of string[10];
Nama :
array[1..20] of string[25];
Nilai :
array[1..20] of real;
Umur :
array[1..20] of byte;
banyak,i :
integer;
Begin
ClrScr;
Write('Isi
berapa data array yang diperlukan :');Readln(banyak);
For i := 1 to
banyak Do
Begin
Write('NPM
=');Readln(NPM[i]);
Write('Nama
=');readln(Nama[i]);
Write('Nilai=');readln(Nilai[i]);
Write('Umur
=');readln(Umur[i]);
End;
{cetak varibel
array}
Writeln('NPM
NAMA NILAI UMUR ');
For i:= 1 to
banyak Do
Begin
Writeln(Npm[i]:10,Nama[i]:25,Nilai[i]:3:2,'
',Umur[i]:3);
End;
Readln;
End.
Untuk deklarasi
array dapat digunakan beberapa cara seperti berikut ini :
Type
Angka =
String[20];
Var
Nama : Array
[1..50] of Angka;
Begin
.
End.
Deklarasi tipe
indeks subrange integer Indeks pada array dapat tipe skalar atau subrange,
tetapi tidak bisa real.
Contoh:
Var
Nilai :
Array[1..10] of Integer;
pada contoh ini array
nilai mempunyai 10 buah elemen yaitu dari 1 sampai 10. Array tersebut dapat
dideklarasikan dengan type seperti berikut ini :
Type
Skala = 1..10;
Var
Nilai : Array
[skala] of Integer;
atau :
Type
Skala = 1..10;
Y = Array[skala]
of Integer;
Var
Nilai : Y;
atau :
Type
Y = Array[1..10]
of Integer;
Var
Nilai : Y;
atau :
Const
Atas =1;
Bawah = 5;
type
Y =
Array[Atas..Bawah] of Integer;
Var
Nilai
: Y;
I. Deklarasi Type Indeks Skalar
Indeks dari
larik dapat berupa tipe skalar.
Contoh. :
Program
Deklarasi_Indeks_Array_Skalar;
Uses Crt;
Var
Jum :
Array[(jan,feb,mar,apr,mei)] of Integer;
Begin
Jum[jan]:=25;
Jum[feb]:=45;
Jum[mar]:=21;
Jum[apr]:=23;
Jum[mei]:=50;
Writeln('Jumlah
nilai bulan maret =',Jum[mar]);
Readln;
End.
dapat juga
ditulis :
type
Bln =
(jan,feb,mar,apr,mei);
Var
Jum : Array[bln]
of Integer;
atau :
type
Bln
=(jan,feb,mar,apr,mei);
Var
Jum :
Array[jan..mei] of Integer;
II. Deklarasi Konstanta Array
Array tidak
hanya dapat berupa suatu varibel yang dideklarasikan di bagian deklarasi
variabel, tetapi dapat juga berupa konstanta (const).
Contoh Program :
Program
Contoh_Deklarasi_Array_Konstan;
Uses Crt;
Const
Tetap :
Array[1..4] of Integer=(7,10,21,20);
Var
i : Integer;
Begin
For i:= 1 to 4 Do
Writeln('Nilai
Konstan array ke ',i:2,' =',Tetap[i]);
Readln;
End.
konstanta array
dapat juga berupa ketetapan dalam bentuk karakter seperti berikut.
Contoh Program :
Program
Contoh_Konstan_Array_Char_;
Uses Crt;
Const
Huruf :
Array[0..5] of Char=('A','B','C','D','E','F');
Var
i : Integer;
Begin
For i:= 0 to 5
Do
Writeln('Nilai
konstan array ke',i:2,' = ',Huruf[i]);
Readln;
End.
Konstanta array
dapat juga berupa string seperti berikut ini.
Contoh Program :
Program
Constanta_Array_String;
Uses Crt;
Type
A = Array [1..5]
of String;
Const
Nama : A =
('basic','pascal','cobol','paradox','dbase');
Var
i : Integer;
Begin
For i:= 1 to 5
Do
Writeln('Nilai
Array ke-',i:2,'= ',Nama[i]);
readln;
end.
Dalam pascal string merupakan array dari elemen- elemen karakter seperti berikut :
Contoh Program :
Program
String_Adalah_Array_Tipe_Char;
Uses Crt;
Var
Nama : string;
i : Integer;
Begin
Nama:='Turbo
Pascal';
For i:= 1 to
Length(nama) Do
Writeln('Elemen
',i,' dari ',Nama,'= ',Nama[i]);
Readln;
End.
contoh program
bilangan prima dengan menggunakan bantuan array.
Contoh program :
Program
Mencari_Bilangan_Prima_Dengan_Array;
Uses Crt;
Var
Prima :
Array[1..100] of Integer;
i,j : Integer;
bil : Integer;
Begin
ClrScr;
For i := 2 to
100 Do
Begin
Prima[i]:=i;
For j:= 2 to i-1
Do
Begin
bil := (i mod
j); {* i dibagi j dicek apakah 0*}
If bil = 0 then
Prima[i]:=0; {*jika habis dibagi,berarti bkn prima*}
End;
If
Prima[i]<> 0 Then Write(Prima[i],' '); {*cetak array yg prima*}
End;
Readln;
End.
Contoh
pengurutan data dengan metode buble sort, yaitu dengan cara penukaran, dapat
dilihat pada contoh dibawah ini :
Contoh Program :
Program
Penggunaan_Array_Untuk_Sortir_Buble_Sort;
Uses Crt;
Var
nil1 :
Array[1..100] of Integer;
n,i,j,dum :
Integer;
Begin
ClrScr;
Write('mau isi
berapa data acak (integer) ='); readln(n);
For i := 1 to n
Do
Begin
Write('Data Ke
',i,':');Readln(nil1[i]);
End;
{* penyapuan
proses}
for i:= 1 to n-1
do
begin
for j:= i to n
do
begin
if
nil1[j]<nil1[i] then
begin
dum:=nil1[j];
nil1[j]:=nil1[i];
nil1[i]:=dum;
end;
end;
end;
writeln;
writeln('Hasil
Sortir');
for i := 1 to n
do
write(nil1[i]:3);
readln;
end.
III. Array Dua Dimensi
Di dalam pascal
Array dapat berdimensi lebih dari satu yang disebut dengan array dimensi banyak
(Multidimensional array), disini akan dibahas array 2 dimensi saja. Array 2
dimensi dapat mewakili suatu bentuk tabel atau matrik, yaitu indeks pertama
menunjukkan baris dan indeks ke dua menunjukkan kolom dari tabel atau matrik.
1 2
1 2 3
Untuk mengetahui
cara mendeklarasikan dari penggunaan aray dua dimensi dapat dilihat pada
listing program dibawah ini .
Contoh Program:
Program
Deklarasi_Array_Dua_Dimensi; Uses Crt; Var Tabel : Array[1..3,1..2] of Integer;
i,j : Integer; Begin ClrScr; Tabel[1,1]:=1; Tabel[1,2]:=2; Tabel[2,1]:=3;
Tabel[2,2]:=4; Tabel[3,1]:=5; Tabel[3,2]:=6; For I := 1 to 3 Do Begin For J:= 1
to 2 Do Begin Writeln('Elemen ',i,',',j,'= ',tabel[i,j]);
End;
End;
Readln;
End.
IV.
Alternatif Deklarasi Array Dua Dimensi.
Ada beberapa
cara dalam mendeklarasikan array dua dimensi, beberapa cara tersebut dapat
dilihat dibawah ini :
Contoh :
Var
Tabel : Array[1..3]
of Array[1..2] of Byte;
atau :
Type
Matrik =
Array[1..3,1..2] of Byte;
Var
Tabel : Matrik;
atau :
Type
Baris = 1..3;
Kolom = 1..2;
Matrik =
Array[Baris,Kolom] of Byte;
Var
Tabel : Matrik;
atau :
Type
Baris = 1..3;
Kolom=1..2;
Matrik=
Array[Baris] of Array[Kolom] of Byte;
Var
Tabel : Matrik;
Dibawah ini akan
diberikan listing program penggunaan array dua dimensi dalam aplikasi
penjumlahan matrik :
Contoh Prorgam:
Program
Penjumlahan_Matrik;
Uses Crt;
Var
Matrik1,Matrik2,
Hasil : Array[1..3,1..2] of Integer;
i,j : Integer;
Begin
ClrScr;
{ input matrik
ke satu }
Writeln(' Elemen
matrik satu');
For i := 1 to 3
Do
Begin
For j := 1 to 2
Do
Begin
Write('Elemen
baris -',i,' Kolom -',j,'= ');
Readln(matrik1[i,j]);
End;
End;
{input matrik ke
dua}
Writeln('input
elemen matrik dua');
For i:= 1 to 3
Do
Begin
For j:= 1 to 2
Do
Begin
Write('Elemen
baris -',i,' kolom -',j,'= ');
Readln(matrik2[i,j]);
End;
End;
{proses
penjumlahan tiap elemen}
For i := 1 to 3
Do
Begin
For j:= 1 to 2
Do
Begin
Hasil[i,j]:=Matrik1[i,j]+Matrik2[i,j];
End;
End;
{proses cetak
hasil}
For i:= 1 to 3
Do
Begin
For j:= 1 to 2
Do
Begin
Write(Hasil[i,j]:6);
End;
Writeln;
End;
Readln;
End.
V.
Array Sebagai Parameter
Array dapat
digunakan sebagai parameter yang dikirimkan baik secara nilai (by value) atau
secara acuan (by reference) ke procedure atau ke function. Procedure yang
menggunakan parameter berupa array harus dideklarasikan di dalam judul
procedure yang menyebutkan parameternya bertipe array.
Contoh Program :
Program
Contoh_Pengiriman_Parameter_Array_Di_Procedure;
Uses Crt;
Const
Garis
='---------------------------------------------------';
Type
Untai =
Array[1..10] of String[15];
Bulat =
Array[1..10] of Integer;
Huruf =
Array[1..10] of Char;
Var
i,Banyak :
Integer;
Procedure
Proses(Nama:Untai;Nilai:Bulat);
Var
Ket : String;
Abjad : Char;
Begin
Writeln(Garis);
Writeln('Nama
Nilai Abjad Keterangan');
Writeln(Garis);
For i := 1 to
Banyak Do
Begin
If Nilai[i] >
90 Then
Begin
Abjad:='A';
Ket
:='Istimewa';
End;
If
(Nilai[i]<90) And (Nilai[i]>70) Then
Begin
Abjad:='B';
Ket
:='Memuaskan';
End;
If
(Nilai[i]<70) And (Nilai[i]>60) Then
Begin
Abjad:='C';
Ket :='Cukup';
End;
If
(Nilai[i]<60) And (Nilai[i]>45) Then
Begin
Abjad:='D';
Ket :='Kurang';
End;
If Nilai[i]<
45 Then
Begin
Abjad:='E';
Ket :='Sangat
kurang';
End;
Writeln(Nama[i]:15,'
',Nilai[i]:4,' ',Abjad,' ',Ket:15);
End;
Writeln(Garis);
End;
Procedure
Masuk_Data;
Var
Nama
: Untai;
Nilai : Bulat;
Begin
Write('Banyak
data =');Readln(Banyak);
For i:= 1 to
Banyak Do
Begin
ClrScr;
Writeln('Data ke
- ',i);
Write('Nama
=');readln(Nama[i]);
Write('Nilai
=');readln(Nilai[i]);
End;
Proses(Nama,Nilai);
End;
{modul Utama}
Begin
Masuk_Data;
Readln;
End.

