program queue c++


QUEUE(Antrian)
 
Queue(Antrian) adalah suatu kumpulan data yang mana penambahan data/elemen hanya dapat dilakukan pada sisi belakang sedangkan penghapusan/pengeluaran elemen dilakukan pada sisi depan. Jenis struktur data antrian sering digunakan untuk menstimulasikan keadaan dunia nyata. Berbeda dengan stack, prinsip yang digunakan dalam antrian dalah FIFO (First In First Out). Dengan kata lain, urutan keluar elemen akan sama dengan urutan masukannya.

Berikut source code program queue c++:
#include<stdio.h>
#include<iostream>
#include<conio.h>
#define MAX 10
using namespace std;

typedef struct {
int data[MAX];
int head;
int tail;
}Queue;
Queue antrian;

void Create(){
antrian.head=antrian.tail=-1;
}
int IsEmpty(){
if(antrian.tail==-1)
    return 1;
else
    return 0;
}

int IsFull(){
if(antrian.tail==MAX-1)
    return 1;
else
    return 0;
}

void Enqueue(int data){
if(IsEmpty()==1) {
    antrian.head=antrian.tail=0;
    antrian.data[antrian.tail]=data;
    cout<<"Data "<<antrian.data[antrian.tail]<<"sudah masuk"<<endl;
} else
if(IsFull()==0) {
    antrian.tail++;
    antrian.data[antrian.tail]=data;
    cout<<"Data "<<antrian.data[antrian.tail]<<"sudah masuk"<<endl;
}
}
int Dequeue(){
int i;
int e=antrian.data[antrian.head];
if(antrian.tail==-1) {
        cout<<"Antrian kosong"<<endl;
} else {
for(i=antrian.head;i<=antrian.tail-1;i++) {
    antrian.data[i]=antrian.data[i+1];
}
antrian.tail--;
cout<<"data yang keluar="<<e<<endl;
return e;
}
}
void Clear() {
antrian.head=antrian.tail=-1;
cout<<"CLEAR"<<endl;
}
void Tampil() {
if(IsEmpty()==0) {
    for(int i=antrian.head;i<=antrian.tail;i++){
    cout<<"| "<<antrian.data[i]<<" |";
    }
} else cout<<"Antrian kosong"<<endl;
}
int main(){
int pil;
int data;
Create();
do{
    cout<<endl<<endl;
    cout<<"***********PROGRAM QUEUE************"<<endl;
    cout<<"1. ENQUEUE"<<endl;
    cout<<"2. DEQUEUE"<<endl;
    cout<<"3. TAMPIL"<<endl;
    cout<<"4. CLEAR"<<endl;
    cout<<"5. EXIT"<<endl;
    cout<<"Masukkan Pilihan:"; cin>>pil;
    switch(pil) {
    case 1: cout<<"Masukkan Data:"; cin>>data;
    Enqueue(data);
    break;
    case 2:
        Dequeue();
        break;
    case 3:
        Tampil();
        break;
    case 4:
        Clear();
        break;
    case 5:
        break;
    }
    getch();
}
while(pil!=5);
return 0;
}


Output Program




Referensi:



 

Komentar

Postingan populer dari blog ini

Linked list

Pengertian struktur data dan jenis-jenisnya

program binary tree c++