English French German Spain Italian Dutch Russian Portuguese Japanese Korean

Selamat Datang ..... di Blog TIK Pak Budi...!!! Mari .... kita saling berbagi ilmu yang kita miliki....!! Semoga Alloh selalu menuntun jalan kita...! Amin...



Tuesday, February 28, 2012

ARRAY PADA PASCAL

0

Array adalah variabel yang dapat menyimpan lebih dari satu nilai sejenis. Terdpt dua bagian penting yaitu elemen array yang mrp nilai dan indeks array yang mrp nilai urut untuk mengakses nilai pada array.
Berikut ini contoh array A dengan 10 buah elemen tiap elemen memiliki nilai antara 10 hingga 100.
A[1]
A[2]
A[3]
A[4]
A[5]
A[6]
A[7]
A[8]
A[9]
A[10]
1
2
3
4
5
6
7
8
9
10
10
20
30
40
50
60
70
80
90
100




Deklarasi Array.
Array dideklarasikan pada bagian deklarasi. Deklarasi umum dari array adalah
NamaArray : array[IndeksAwal..IndeksAkhir] of tipe_data;
Contoh:
Jika akan mendeklarasikan variabel A sebagai Array dengan 10 elemen bertipe integer :
Var
A: array [1..10] of Integer;
Contoh lain:
A1: array[0..9] of Integer;
A1: array[10..20] of Integer;
A1: array[‘a’..’j’] of Integer;

Mengakses elemen Array
U/ memberikan nilai pada variabel array dpt dgn menggunakan parameter berikut :
NamaArray [indeks]:=nilai;
Contoh :
Var
A: array[1..10] of integer;
Begin
A[1]:=1; {Mengisikan elemen 1 dengan nilai 1}
A[9]:=200; {Mengisi elemen 9 dengan nilai 200};
End.

Array sebagai konstanta
Nilai pd array dpt bernilai konstan. Dpt kita lakukan dgn mendeklarasikannya pd bagian constanta.
Bentuk umum pendeklrasiannya adalah:
Const
NamaArray : array[IndeksAwal..IndeksAkhir] of Tipe_Data = (nilai1, nilai2,………);
Banyaknya nilai konstanta harus sama dengan jumlah elemennya.
Contoh penggunaanya

Program ArrayKonstan;
Uses Wincrt;
Const
Hari : array[1..7] of string = ('senin','selasa','rabu','kamis','jumat','sabtu','minggu');
Var
noHari:integer;
begin
clrscr;
write('Masukan nomor harinya : ');readln(noHAri);
write('Hari ke-',noHari, ' adalah ',Hari[noHari]);
readln;
end.

Output :
Masukan nomor harinya : 3
Hari ke 3 adalah rabu

Array sebagai parameter
Array pada waktu tertentu dpt digunakan sebagai parameter dari suatu prosedur / fungsi.
Contoh :
Type
Bilangan = array [1..100] of integer;
Procedure InputArray(A:bilangan; N:integer);
var
i:integer;
begin
for i:=1 to N do
write('Masukan elemen array ke ',i); readln(A[i]);
end.

Contoh diatas adalah penggunaan array sebagai parameter untuk memberikan nilai pd suatu array tertentu.

Array berisi record
Caranya adalah mendefinisikan record terlebih dahulu yang kemudian akan digunakan sebagai tipe data pada saat pendeklarasian array. Contoh:
Type
Tsiswa = record
NIM:=string[9];
Nama:string[25];
End;
TkumpulanSiswa = array [1..100] of Tsiswa;
Var
A: TkumpulanSiswa;
Variabel A diatas akan menampung 100 buah record yang bertipe Tsiswa. Sementara untuk record berisi array dengan contoh perhitungan nilai siswa berikut : Nilai = (20% * kuis) + (30% * UTS) + (50% * UAS). Maka kita dapat mendefinisikan mahasiswa sebagai tipe record yang memiliki 3 nilai dengan menggunakan array. Yaitu:
Type
Tsiswa = record
NIM:=string[9];
Nama:string[25];
Nilai = array [1..3] of real;
Kode diatas menunjukan bahwa setiap mahasiswa memiliki 3 nilai.

Metode pencarian pada Array
Ada beberapa macam teknik dalam mendapatkan nilai dari suatu elemen pada array salah satunya dengan metode pencarian beruntun.
Contoh:
Program CariBeruntun;
Uses Wincrt;
Const
N : array[1..5] of integer= (10,20,30,40,50);
Var
a,b,index : integer;
begin
clrscr;
write(‘Masukan nilai yang akan dicari : ’);readln(a);
index:=0;
for b:=1 to 5 do
begin
if N[b] = a then
begin
index:=b;
break;
end;
end;
writeln(a,’ adalah nilai yang ditemukan pada index ke ’,index);
end.

Array 2 dimensi
Array 2 dimensi adalah array yg memiliki 2 buah elemen bertipe array yang berbentuk kolom dan baris. Pendeklarasiannya adalah sebagai berikut:
NamaArray : array[1..BanyakBaris, 1..BanyakKolom] of tipe_data;

Contoh :
Array2D : array[1..3, 1..4] of integer;
Sedangkan untuk mengaskes maupun memberikan nilai dengan parameter:
Array2D [2,3]:=200; {Mengisikan nilai 200 pada baris 2 kolom 3}

0 comments:

Post a Comment

 
Design by ThemeShift | Bloggerized by Lasantha - Free Blogger Templates | Best Web Hosting