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

Cara Instal Appserv 2.5.10 di Wndows 7

hehe untuk kali nhe , sya mw coba share cara instal appserv d windows seven, walau ini info lama , tp mdah2an bsa membantu agan2 ,,, langkah2 nha yaitu : download appserv 2.5.10 nya di APPSERVNETWORK jalankan appserv.exe nya. pada tampilan form berikut, pada server name isikan dengan "localhost" (tanpa tanda kutip) dan pada administration email address isikan dengan email anda misalnya lawlietsan1302@gmail.com pada form password , pada enter root password , isikan dengan "root" dan re password , isikan dengan root. setelah itu , pilih instal... tunggu hingga finis.. lalu coba anda buka localhost pada web browser.. setelah muncul tampilan, pilih maka akan muncul form autentikasi, isikan pada username/nama pengguna dengan "root" dan pada password dengan "root"... lalu tekan ok... ok, dan selesai,, selamat mencoba :)