Archive for Maret 2011

STACK


.


Linear List
Suatu struktur data umum yang berisi suatu kumpulan terurut dr elemen; jumlah elemen list dapat berubah-ubah.
Linear list A yg terdiri dari T elemen pada waktu T dihotasikan sebagai : A=[A1,A2,…,AT]
Jika T=0, maka A disebut “Empity List” atau “Null List”
STACK secara umum:
S=[S1,S2,…Sn] , bahwa S1 berada diatas elemen Sj, untuk I>J.
Contoh stack: tumpukan baki dalam cafeteria.
4operasi  dasar pd stack:
·         Create (stack)
·         Isempity (stack)
·         Push (elemen stack)
·         Pop (stack)

§  Create adalah operator yg menunjukan suatu stack kosong dengan nama S.
§  ISempity adalah operator yang menentukan apakah stack S kosong. Operandnya terdiri dari type data stack. Hasilnya type data Boolean.
§  Push adalah operator yang menambahkan elemen E pada puncak stack S.
§  Pop adalah operator yang menghapus sebuah elemen dari puncak stack S.
Aplikasi Stack
1.       Penjodohan tanda kurung/matching parantheses.
ALGORITMA.
a.       Amati barisan elemen dari kiri ke kanan.
b.      . bila bertemu ‘(‘ maka ‘(‘ di push ke dalam stack.
.bila bertemu ‘)’ maka periksa stack hampa atau tidak.
Bila hampa : ada ‘)’ dan tidak ada ‘(‘ (error)
Bila tidak hampa: ada sepasang ‘(‘ &’)’ dan POP elemen keluar.

2.       Notasi POSTFIX
ALGORITMA.
a.       Jika ‘(‘, maka push ke dalam stack.
b.      Jika ‘)’, pop elemen dalam stack sampai symbol ‘(‘ semua di pop merupakan output kecuali ‘(‘ tadi.
c.       Jika symbol operand, langsung merupakan output.
d.      Jika symbol operator, maka:
§  Jika elemen top stack dengan level >= maka pop sebagai output teruskan sampai ‘(‘ .
§  Jika elemen top <, operator yg diamati di push ke dalam stack
e.      Bila ‘;’ kita pop semua elemen dalam stack hingga hampa.

RECORD


.

PENGERTIAN
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:
type
Data_mahasiswa = record
Nama : string;
Usia : integer;
Kota : String;
Kodepos : integer;
end;
Var
x: Data_mahasiswa;


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.

sumber: http://bayoe.staff.uns.ac.id/files/2009/03/4-array-dan-record.pdf

ARRAY


.


PENGERTIAN

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).


Cara Pendefinisian: 
• contoh type
A = array [1..6] of integer;

• 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;.



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;



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.


ARRAY MULTIDIMENSI

Dalam array multidimensi terdiri atas baris 
(row) dan kolom (column). Index pertama 
adalah baris dan yang kedua adalah 
kolom.


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;

sumber: 
http://bayoe.staff.uns.ac.id/files/2009/03/4-array-dan-record.pdf