CLICK HERE FOR BLOGGER TEMPLATES AND MYSPACE LAYOUTS »

. tNtaNg dRikuw ,., ^_~

Foto saya
. saya bernamakan DANIE POETRA ,., . byasa dipggilin LEMOD ma si BULAAD ,., :P . tp ini lah driku ,., . yg byasa" sajha ,., . hhe . . aku orang nya frienship ,., . gmpang brgauL ,. . (wLaupun dLuw kUper sieh ,.) . hhe . insya allah tdag smbonk ,. . baeg hatii ,., . n rajin mnabung ,., . :D . . ntar deh klo uda knaL ,. . di kritik jha eah ,., . oukey ?? . :)) . . . pROfiLe kuw ... . . NAMA : DANI PUTRA . NIM : 0803020528 . KELAS : A . MY BLOG : mp3kidzz.blogspot.com

Minggu, 24 Mei 2009

hMm .. QUEUE nieh ..

-à Kumpulan data dimana data masuk dan keluar pada ujung yang berbeda.
-à Konsep utama FIFO ( Fisrt In First Out ).

Contoh:
1 2 3
Aditya putra Gauthama



Data nomor 1 datang/masuk dan keluar duluan.

Algoritma:
Input/tambah data
Jika ada input maka no antrian yang semula 0 akan tambah 1 demi 1 sampai maksimal antrian.

Hapus/Pengambilan data
· Jika ada pengambilan data maka data dipindahkan di variabel lain contohnya temp, antrian ke-dua akan maju ke antrian pertama dan seterusnya. Dan jumlah antrian yang semula maksimal akan berkurang 1 demi 1 sampai antrian 0 kembali.






Deklarasi Queue
Type
Const
Max = 5;
Nama record = Record
Data : type data;
Top : byte;
End;
Nama_array = ARRAY [1..max] of Nama record;
Var
Antri : nama Array;

1 2 3 4
Data Top

Dyah 1
Data Top

Dyah 1




Nama Array-----à Barang
Nama Record---à Coba
Nama Variabel--à Antri

Contoh Deklarasi dari gambar diatas:
Type
Coba = record
Data :string;
Top : byte;
End;
Barang = ARRAY [1..4] of coba;
Var Antri:barang;
Operasi pada queue
· CREATE
Membuat antrian baru yang masih kosong.

Procedure create;
Begin
antri.top:=0;
End;

· FULL
Untuk memeriksa apakah antrian sudah penih..

Fuction full:bolean;
Begin
antri.top:=max;
End;

· PUSH
Menambah sebuah elemen ( data ) kedalam antrian.
Syarat: tidak bisa dilakukan jika antrian sudah penuh.

Procedure push ( input:string );
Begin
If not full then
Begin
antri.top:=antri.top;
antri.data:=input;
End;
End;

· EMPTY
Fuction empty: bolean;
Begin
Empty:=false;
If top:=0 then empty:=true;
End;

· POP
Mengambil 1 elemen dari sebuah antrian.
Syarat: antrian tidak boleh kosong.

Procedure Pop ( elemen:string );
Begin
If not empty then
Begin
Elemen:=antri.data;
antri.top:=top – 1;
End;
End;


Contoh:
1 2 3

Aditya putra gauthama






Program antrian_1;
Uses wincrt;
Type
Data= array [1..3] of string;
Var
D: data;
I, antri: integer;
Temp: string;
Begin
Antri:=0;
{untuk input}
For I:=1 to 3 do
Begin
Writeln(’masukkan nama ke’,’ ’,i);
Readln(d[i]);
Antri:=antri+1;
End;
{untuk Output}
For I:=1 to 3 do
Begin
Temp:=d[i];
Antri:=antri-1;
End;
{lihat output di var temp setelah pengambilan }
Writeln(’hasil var temp=’,temp);
Readln;
End.

0 coMment: