Langsung ke konten utama

StruktUr Data Modul 06

Lawlietsan

http://Lawlietsan.co.cc/

MODUL 6

QUEUE ( ANTRIAN )

 

-à Kumpulan data dimana data masuk dan keluar pada ujung yang berbeda.

-à Konsep utama FIFO ( Fisrt In First Out ).

 

Data nomor 1 datang/masuk dan keluar duluan.

 

Algoritma:

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

 

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

 

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

 

Contoh Deklarasi dari gambar diatas:

Type

            Coba = record

            Data     :string;

            Top      : byte;

            End;

Barang = ARRAY [1..4] of coba;

Var      Antri:barang;

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

 

 

Komentar

Postingan populer dari blog ini

untitle

Satu kata yang terucap Mengguncang gelora hati Satu Kata yang kau ucap Gemuruh hati tanpa henti Kau ucap kata perih untukku Tak dapat kau mengerti aku Kau jauh Tinggalkan ku tanpa jejakmu Ku takut kehilanganmu Kehilangan cinta darimu masih bisakah aku menjaga ragamu Masih bisakah aku sentuh jiwamu Ku kan simpan cinta ini Untuk jiwa yang mengertiku created by : Ferika W FMIPA MI UR

Winstep Xtreme 11.6 Free & Full Version

Mau tampilan desktop kamu keren? kebetulan sekali karena saya ingin share aplikasi yaitu Winstep Xtreme 11.6.Winstep Xtreme 11.6 digunakan untuk mengubah tampilan desktop kamu mulai dari icon,start button,taskbar,theme dan juga ada penambahan dock untuk shortcut & widget tambahan.Memudahkan Kontrol di windows kamu karena semua fitur tersedia di desktop kamu. Dijamin setelah install Winstep Xtreme 11.6, desktop di PC kamu pasti jadi keren. Gak percaya? Cekidot aja gan. System Requirements Windows 2000/2003 Server/XP/Vista/7 32 bit. 500 Mhz processor. 256 MB of RAM. 50 MB of free hard disk space. Screen resolution 800x600 or higher. Silakan Download Disini Via Rapid Share Winstep Xtreme 11.6 Free & Full Version [33 Mb] NB : Buat kamu yang mau download tema Winstep Xtreme yang lebih banyak lagi,silakan lihat disini Themes Winste p Xtreme