- Kumpulan data dimana data masuk dan keluar pada ujung yang berbeda.
- Konsep utama FIFO ( Fisrt In First Out ).
Algoritma:
1. Input/tambah data
• Jika ada input maka no antrian yang semula 0 akan tambah 1 demi 1 sampai maksimal antrian.
2. 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.
3. 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;
Nama Array----- Barang
Nama Record--- Coba
Nama Variabel-- Antri
4. 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;
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.
Hai para Blogger yang keren and cool abizz. Nich Blog sebenarnya dah lama banget g Q jalankan. Tapi akhir-akhir ne Q mulai tertarik ge buat nulis d blog... ya itung-itung berbagi informasi ma kalian smw.. semoga blog ne bermanfaat yach Sob!!! And don't miss to post U'r comment!!!
6.03.2009
QUEUE ( ANTRIAN )
Langganan:
Posting Komentar (Atom)
Tidak ada komentar:
Posting Komentar