Algoritma dan Struktur Data
Bagian:
Array dan record
1. Pengertian Array
Suatu array adalah sebuah struktur data yang terdiri atas
banyak variabel dengan tipe data sama, dimana masing-masing elemen variabel
mempunyai nilai indeks. Setiap elemen array mampu untuk menyimpan satu jenis
data (yaitu: variabel).
2.
Cara Pendefinisian
• contoh type
A = array [1..6] of integer;
1
|
2
|
3
|
4
|
5
|
6
|
•
Secara logika pendefinisian array di atas merupakan sekumpulan kotak , dimana
tiap kotak mempunyai nilai indeks integer 1, 2, 3, ...,6 tiap elemen array
ditandai dengan: A[1], A[2], A[3], A[4], A[5], A[6] untuk mengisi elemen array
misal A[1]:=4;.
3.
Sifat Array
Array merupakan struktur data yang statis, yaitu jumlah
elemen yang ada harus ditentukan terlebih dahulu dan tak bisa di ubah saat program
berjalan. Untuk menyatakan array dalam PASCAL kita harus terlebih dahulu:
Mendefinisikan jumlah
elemen array
Contoh. const N=10;
type
A=
array [1..N] of integer;
4. Array Satu Dimensi
Pendefinisian array secara umum adalah sebagai berikut:
jika kita ingin membuat beberapa array dengan tipe/jenis yang sama, kita lebih
baik jika mendeklarasikan dengan type selanjutnya dengan deklarasi var.
Sintax array 1
dimensi
• Type
nama_array = ARRAY[bawah..atas]
of
tipe_data;
var variabel_array
: nama_array; atau
• var
variabel_array : ARRAY[bawah..atas]
of tipe_data;
Contoh Program Array 1
dimensi
program INT_ARRAY;
uses wincrt;
const N=10;
type int_array =
ARRAY [1..N] of integer;
var bil : int_array;
indeks : integer;
BEGIN
writeln('masukkan
sepuluh bilangan integer.');
for indeks := 1 to 10
do
begin
readln(bil[indeks]);
{ loop untuk memasukkan elemen array }
end;
writeln('Isi dari
array ini adalah'); { tampilkan setiap elemen }
for indeks := 1 to 10
do
begin
writeln('bil[',
indeks:2,'] adalah ',bil[indeks] );
end
END.
5. Array Multidimensi
Dalam array multidimensi terdiri atas baris (row) dan
kolom (column). Index pertama adalah baris dan yang kedua adalah kolom.
Syntax
• Type
nama_array =ARRAY[bawah..atas, bawah..atas] of tipe_data;
var
variabel_array : nama_array; atau
• SYNTAX
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;
Contoh Program
Procedure
ISI_MATRIK(AKU:matriks;
m,n:integer);
var
i,j: integer; {faktor
pengulang}
begin
for i:=1 to m do
begin
for j:=1 to n do
begin
gotoxy(x+2i.y+2y);
read(A[i,j]);
end;
readln ;{ini
memungkinkan kita menulis tiap baris elemen}
end;
1.
Pengertian Record
Sebuah record rekaman disusun oleh beberapa field. Tiap
field berisi data dari tipe dasar / bentukan tertentu. Record mempunyai
kelebihan untuk menyimpan
suatu sekumpulan
elemen data yang berbeda-beda tipenya (di banding array).
Contoh
, sebuah record dengan empat buah field.
2.
Cara Pendefinisian
•
Cara pendeklarasian dari record adalah sbb:
|
|
|
|
Field
1
|
Field
2
|
Field
3
|
Field
4
|
• Mendefinisikan tipe
dari record (jumlah field, jenis tipe data yang dipakai),
•
Mendefinisikan variabel untuk dilakukan operasi.
3.
Sintax
type
nama_record = record
identifier_1 :
tipe_data_1;
:
:
identifier_n :
tipe_data_n;
end;
var
variabel : nama_record;
Contoh
type
Data_mahasiswa =
record
Nama : string;
Usia : integer;
Kota : String;
Kodepos : integer;
end;
Var
x:
Data_mahasiswa;
Pengaksesan Elemen Record
x.Nama
x.Usia
x.Kota
x.Kodepos
Contoh Program
program RECORD_INTRO;
type tanggal = record
bulan, hari, tahun :
integer;
end;
var waktu : tanggal;
begin
waktu.hari :=25;
waktu.bulan:=09;
waktu.tahun:= 1983;
writeln('hari ini
adalah
',waktu.hari,':',waktu.bulan,':',
waktu.tahun)
end.