Selasa, 05 Januari 2016

TUGAS KELOMPOK



Pengertiian queue adalah Queue pada Struktur Data atau antrian adalah sekumpulan data yang mana  penambahan elemen hanya bisa dilakukan pada suatu ujung disebut dengan sisi belakang (rear), dan penghapusan (pengambilan elemen) dilakukan lewat ujung lain (disebut dengan sisi depan atau front)
Maka pada Queue atau antrian prinsip yang digunakan adalah “Masuk Pertama Keluar Pertama” atau FIFO (First In First Out).
Pada Queue atau antrian Terdapat satu buah pintu masuk di suatu ujung dan satu buah pintu keluar di ujung satunya dimana membutuhkan variabel Head dan Tail (depan/front, belakang/rear).
contoh aplikasi queue dalam kehidupan sehari-hari:

1. Antrian di jalan tol
2. Antrian saat mengantri di loket
3. Antrian reservasi tiket kereta api, dll
Semua itu menggunakan aturan FIFO (First In, First Out).


Operasi-operasi pada Antrian (queue):
1.Create()
Untuk menciptakan dan menginisialisasi Queue
Dengan cara membuat Head dan Tail  = -1
2. IsEmpty()
Untuk memeriksa apakah antrian masih kosong atau sudah terisi
Dengan cara memeriksa nilai tail, jika tail = -1 maka empty
Pergerakan pada Antrian terjadi dengan penambahan data Antrian kebelakang, yaitu menggunakan nilai tail
3. IsFull()
Untuk mengecek apakah Antrian sudah penuh atau belum
Dengan cara mengecek nilai tail, jika tail >= MAX-1 (karena MAX-1 adalah batas data array pada C) berarti sudah penuh.
berikut adalah contoh program queue
#include "stdio.h"
#include "conio.h"
void main()
{
  int cek=0, data[20], x, hapus;
  char pil;
  do {

      printf("1. Tambah Antrian\n");
      printf("2. Hapus Antrian\n");
      printf("3. Lihat Antrian\n");
      printf("4. Keluar\n");
      printf("Silahkan masukkan pilihan anda...  ");
      pil=getche();
if(pil!='1' && pil !='2' && pil !='3' && pil!='4' )
      printf("\n\nAnda salah mengetikkan inputan...\n");
      else
      {
    if(pil=='1')   //PUSH
    {
      if(cek==20)
        printf("\nAntrian Penuh\n\n");
        else
        {
          printf("\nMasukkan nilai-->");scanf("%i",&x);
          data[cek]=x;
          cek++;
        }}
        else
        {
          if(pil=='2')     //POP
          {



 if(cek==0)
          printf("\nAntrian kosong\n\n");
          else
          {
            hapus=data[0];
            for(int v=0;v<cek;v++)
            data[v]=data[v+1];
            data[cek-1]=NULL;
            cek--;
            printf("\nData dgn nilai=%i terhapus.",hapus);
          }
          getch();
          }
        else
        {
          if(pil=='3')   //CEK DATA
          {
            if(cek==0)
printf("\nAntrian Kosong.\n\n");
  else
            {
             printf("\n");
              for(int z=0;z<cek;z++)
              {
            printf(" | ");
            printf("%i",data[z]);
            printf(" | ");
              }
            }
            getch();
            }
          }
        }
          }
    }while(pil!='4');
}
;
OUTPUTNYA:
 

1 komentar:

  1. Baccarat | Play Online, Live! | Rothione Casino
    Play and win at 메리트카지노 Baccarat online casino where the best 바카라 사이트 of luck lies at your fingertips! Whether you are an online casino with the thrill of baccarat, roulette, blackjack 메리트 카지노 쿠폰 or

    BalasHapus