SOURCE CODE Program Dengan Menu Enqueue, Dequeue, Clear, Display, Dan Keluar C++

Queue berarti antrian, queue merupakan salah satu contoh aplikasi dari pembuatan double linked list yang cukup sering kita temui dalam kehidupan sehari-hari, misalnya saat Anda mengantri di loket untuk membeli tiket. Istilah yang cukup sering dipakai seseorang masuk dalam sebuah antrian adalah enqueue. Dalam suatu antrian, yang dating terlebih dahulu akan dilayani lebih dahulu. Istilah yang sering dipakai bilaseseorang keluar dari antrian adalah dequeue. Walaupun berbeda implementasi, struktur data queue setidaknya harus memiliki.

Operasi-operasi Queue sebagai berikut:

  • EnQueue Memasukkan data ke dalam antrian
  • DeQueue Mengeluarkan data terdepan dari antrian
  • Clear Menghapus seluruh antrian 
  • IsEmpty Memeriksa apakah antrian kosong
  • IsFull Memeriksa apakah antrian penuh

Program Dengan Menu Enqueue, Dequeue, Clear, Display, Dan Keluar C++ 

Interface

SOURCE CODE Program Dengan Menu Enqueue, Dequeue, Clear, Display, Dan Keluar C++

Source Code

#include <conio.h>
#include <stdlib.h>
#include <iostream.h>
#define max 10

struct node
{
    int info;
    struct node *ptr;
}*front,*rear,*temp,*front1,*p = NULL;
int count = 0,i,no=1;

void create()
{
    front = rear = NULL;
}

void enq(int x)
{
    if (rear == NULL)
    {
        rear = (struct node *)malloc(1*sizeof(struct node));
        rear->ptr = NULL;
        rear->info = x;
        front = rear;
    }
    else
    {
        temp=(struct node *)malloc(1*sizeof(struct node));
        rear->ptr = temp;
        temp->info = x;
        temp->ptr = NULL;

        rear = temp;
    }
    count++;
}

void display()
{
    front1 = front;

    if ((front1 == NULL) && (rear == NULL))
    {
        cout<<” Queue Kosong”;
        return;
    }
    while (front1 != rear)
    {
        cout<<” “<<front1->info<<” –>”;
        front1 = front1->ptr;
    }
    if (front1 == rear)
        cout<<” “<<front1->info<<” –>”;
}

void deq()
{
    front1 = front;

    if (front1 == NULL)
    {
        cout<<“\n Queue Kosong”;
        return;
    }
    else
        if (front1->ptr != NULL)
        {
            front1 = front1->ptr;
            cout<<“\n Nilain yang di Dequed : “<<front->info;
            free(front);
            front = front1;
        }
        else
        {
            cout<<“\n Nilain yang di Dequed : “<<front->info;
            free(front);
            front = NULL;
            rear = NULL;
        }
        count–;
}

void clear()
{
node *hapus;
rear = front;
while(rear!=NULL){
hapus = front;
rear = rear->ptr;
delete hapus;
}
front = NULL;
}

void main()
{
    int no, ch;
    cout<<” *****************************\n”;
     cout<<” Nama    : MOHAMMAD SYAIFULLAH\n”;
    cout<<” NIM    : 121411091\n”;
     cout<<” Jurusan: Teknik lnformatika \n”;
     cout<<” *****************************\n\n”;
    cout<<“\n 1 – Enque”;
    cout<<“\n 2 – Deque”;
    cout<<“\n 3 – Clear”;
    cout<<“\n 4 – Display”;
    cout<<“\n 5 – Exit”;
    create();
    while (1)
    {
        cout<<“\n\n Masukan Kode Menu : “;cin>>ch;
        switch (ch)
        {
        case 1:
            cout<<” Masukan data : “;cin>>no;
            enq(no);
            break;
        case 2:
            deq();
            break;
        case 3:
            clear();
            cout<<” Queue Telah di Hapus”;
            break;
        case 4:
            display();
            break;
        case 5:
            exit(0);
        default:
            cout<<” Kode Salah “;
            break;
        }
    }
}

Mungkin itu saja yang bisa admin bagikan kepada Anda. admin berharap artikel ini sangat bermanfaat bagi Anda. Admin akan sangat bertrimakasih bila anda mau meluangkan waktu untuk memberikan KOMENTAR dan SHARE artikel ini, karena kontribusi anda sangat berharga bagi Admin.

Baca Juga:

Leave a Reply

Your email address will not be published. Required fields are marked *