Contoh Pemrograman Struktur Data Modul Queue Antrian


QUEUE / ANTRIAN


nKondisi final   queue sesudah di enqueue  Contoh Pemrograman Struktur Data Modul Queue Antrian



PENYUSUN :
Zakaria Annas
 (123090182)
Plug : 6



Asisten Dosen : Henry Tri P.
Co.Asisten : Agus Hermawan





JURUSAN TEKNIK INFORMATIKA
FAKULTAS TEKNOLOGI INDUSTRI
UNIVERSITAS PEMBANGUNAN NASIONAL “VETERAN” YOGYAKARTA
2010

//queue melingkar dengan mengorbankan 1 daerah kosong
#include <iostream>
#include <malloc.h>
#define max 5
#define True 1
#define False 0
Using std::cout;
Using std::cin;
Using std::endl;
typedef float typeinfo;
typedef struct typequeue{int depan, belakang;
typeinfo elemen[max];};
struct typequeue queue;
void buatqueue();
void cetakqueue();
void enqueue(float IB);
void dequeue();
void jumlahqueue();
void jumlahisi();
int queuekosong();
int queuepenuh();
int main()
{
     int h,i,j;
     buatqueue();
          cout << "Masukan jumlah enqueue : " ;
          cin >> j;
     for (i=0; i<j ; i++)
     {
           cout << "queue : ";
           cin >> h;
           enqueue(h);
      }
           cout << "kondisi awal queue sesudah di enqueu : \n";
     /*enqueue(12);
     enqueue(78);
     enqueue(5);
     enqueue(34);*/
     cetakqueue();
     jumlahqueue();
     jumlahisi();
          cout << "\nMasukkan jumlah dequeue : ";
          cin >> j;
     for(i=0;i<j;i++)
     {
           dequeue();
     }
         cout << "\nKondisi queue sesudah di dequeu : \n";
     /*dequeue();
     dequeue();*/
     cetakqueue();
     jumlahqueue();
     jumlahisi();


          cout << "\nMasukkan jumlah enqueue : ";
          cin >> j;
     for(i=0;i<j;i++)
     {
           cout << "queue : ";
           cin >> l;
           enqueue(l);
     }
     cout << "\n\nKondisi final queue sesudah di enqueue : \n";
     /*enqueue(89);
     enqueue(11);*/
     cetakqueue();
     jumlahqueue();
     jumlahisi();
     cout << "\n\n";
}
void buatqueue()
{
     queue.belakang=1;
     queue.depan=1;
}
int queuekosong()
{
   if(queue.depan==queue.belakang)
         return(True);
     else
         return(False);
}
int queuepenuh()
{ int next_belakang;
    if(queue.belakang==max)
       next_belakang=1;
        else
            next_belakang=queue.belakang+1;
    if(queue.depan==next_belakang)
       return(True);
        else
            return(False);
}
void enqueue(float IB)
{   if(queuepenuh())
     cout << "queue overflow\n";
        else
           {if(queue.belakang==max)
           queue.belakang=1;
       else
           queue.belakang++;
           queue.elemen[queue.belakang]=IB; }
}

void dequeue()
{ typeinfo ID;
    if(queuekosong())
           cout << "queue underflow\n";
      else
          {ID=queue.elemen[queue.depan+1];
          if(queue.depan==max)
           queue.depan=1;
     else
           queue.depan++; }
}
void cetakqueue()
{ int i;
    if(queue.depan==queue.belakang)
        cout<<"queue kosong !";
          else
                {if(queue.depan<queue.belakang)
                {i=queue.depan+1;
                while(i<=queue.belakang)
                {cout << " "<< queue.elemen[i];
                i++;}
           }
         else
                {for(i=queue.depan+1;i<=max;i++)
                cout << " " << queue.elemen[i];
                for(i=1;i<=queue.belakang;i++)
                cout << " " << queue.elemen[i];
    }
  }
}
void jumlahqueue()
{ int i=1;
    while(i<queue.belakang-1)
{
i++;}
     cout << "\nJumlah queue : " << i << "\n";
}

void jumlahisi()
{ int i=1;
   float jum=0;
   while(i<=queue.belakang)
{ jum = jum + queue.elemen[i];
i++; }
     cout << "Jumlah akumulasi isi queue = " << jum << "\n\n";
}












Output :
nKondisi final   queue sesudah di enqueue  Contoh Pemrograman Struktur Data Modul Queue Antrian


Baca Juga : APLIKASI GRAFIKA KOMPUTER MENGGUNAKAN LAZARUS

Semoga dengan postingan diatas yang berjudul Contoh Pemrograman Struktur Data Modul Queue Antrian dapat bermanfaat untuk sobatku semuanya.

Subscribe to receive free email updates:

0 Response to "Contoh Pemrograman Struktur Data Modul Queue Antrian"

Posting Komentar