Sabtu, 27 April 2013

Welcome Back ! Nice to Meet "Queue" !


Hahh..
kangen juga lama ngga ngisi ini blog..
terakhir post sekitar Mei tahun lalu.. hahahaha..
oke.. WELCOME !!


Kali ini saya akan berbagi sedikit ilmu kepada reader sekalian..
bagi kalian yang ingin menerapkan implementasi tentang queue atau antrian, berikut sourcecode dengan menggunakan bahasa pemrograman C++..






#include <iostream.h>
#include <stdio.h>
#include <conio.h>

class Queue

{
private:
struct kue
{
int data;
kue*kuebaru;
};

kue*tail;

kue*entry;
kue*print;
kue*head;

public:

Queue();
void Delete();
void Insert();
void cetak();
void menu();
};

Queue::Queue()

{
tail=NULL;
head=NULL;
}

void Queue::Insert()

{
int num;
cout<<"\n\n\n\n\n\t Masukkan data dalam Queue : ";
cin>>num;
entry=new kue;
if(tail==NULL)
{
entry->data=num; //(*entry).data=num
entry->kuebaru=NULL; //(*entry).kuebaru=null
tail=entry;
head=tail;
}else{
entry->data=num; //(*entry).data=num
entry->kuebaru=NULL;
tail->kuebaru=entry; //(*entry).kuebaru=entry
tail=entry;
}
cout<<"\n\n\t*** "<<num<<" Sudah masuk dalam Queue."<<endl;
getch(); //getch:bawaan conio
}

void Queue::Delete()

{
if(head==NULL)
cout<<"\n\n\n\t***Error:Queue is empty.\n"<<endl;
else
{
int deleted_element=head->data; //(*head).data=deleted_element
kue*temp; //kue:nm struct, *temp=data yang ditunjuk oleh tabel
temp=head;
head=head->kuebaru; //(*head).kuebaru=head
delete temp;
cout<<"\n\n\n\t***"<<deleted_element<<"Dihapus dari queue."<<endl;
}
cout<<"\n\n\n\t\tPress any key to return to menu.";
getch();
}

void Queue::cetak()

{
print=head;
if(print!=NULL)
cout<<"\n\n\n\n\tAngka-angka yang ada di dalam queue adalah : \n"<<endl;
else
cout<<"\n\n\n\n\t*** Tidak ada yang ditampilkan."<<endl;

while(print!=NULL) //while cek dulu
{
cout<<"\t"<<print->data<<endl;
print=print->kuebaru;
}
cout<<"\n\n\n\t\tPress any key to return to menu.";
getch();
}

void Queue::menu()

{
char Key=NULL;
do
{
clrscr;

cout<<"**Implementasikan Queue**"<<endl;
cout<<"Pilih salah satu menu : "<<endl;
cout<<"Tekan \'I\' to masukkan data dalam Queue"<<endl;
cout<<"Tekan \'D\' to hapus data dari Queue"<<endl;
cout<<"Tekan \'P\' to tampilkan data dari Queue"<<endl;
cout<<"Tekan \'E\' to Exit"<<endl;

Input:

cout<<"Masukkan pilihan : ";

Key=getche();
if(Key=='e'||Key=='E')/*untuk fungsi exit*/
break;
else if(Key=='i'||Key=='I')
Insert();
else if(Key=='d'||Key=='D')
Delete();
else if(Key=='p'||Key=='P')
cetak();
else
goto Input;
}
while(Key!='e');
}

int main()

{
Queue obj;
obj.menu();
return 1;
}

Selamat mencobaaaaa.. :)
Silahkan tinggalkan komentar yaa..

Tidak ada komentar:

Posting Komentar