Program Queue Pada C++
#include
#include
#include
char pil;
int jml;
void delay();
struct node
{
char kar;
node *next;
}
node *tail; //ekor node *now;
node *head;
{
tail=NULL; head=NULL;
}
void push(char ch)
{
now=new node;
if
{ (head==NULL)
{
now->kar=ch;
now->next=NULL;
tail=now; head=now;
}
else
{
now->kar=ch;
now->next=NULL;
tail->next = now;
tail=now;
}
}
void enqueue()
{
int i;
char temp; gotoxy(1,6);
cout<<" ";
gotoxy(1,8);
cout<<" ";
gotoxy(1,6); cout<<" Masukkan @ karakter : ";
cin>>temp;
gotoxy(1,6); cout<<" ";
push(temp);
for(i=1;i<= 75-jml*6;i++)
{
gotoxy(i+1,20);
cout<<" O";
gotoxy(i,21);
cout<<"=("<kar<<")="; gotoxy(i+1,22);
cout<<"| |";
delay();
if(i!=75-jml*6)
{ gotoxy(i+1,20);
cout<<" ";
gotoxy(i,21);
cout<<" ";
gotoxy(i+1,22);
cout<<" ";
}
}
}
void dequeue()
{
if(head==NULL)
{ gotoxy(1,8);
cout<<"antrean kosong !";
delay();
}
else
{
jml=jml-1;
char delete_element=head->kar;
node *temp; temp=head;
head=head->next;
delete temp;
for(inti=69;i<=76;i++)
{
gotoxy(i+1,20);
cout<<" O";
gotoxy(i,21); cout<<"=("< gotoxy(i+1,22);
cout<<"| |";
delay();
gotoxy(i+1,20);
cout<<" "
gotoxy(i,21);
cout<<" ";
gotoxy(i+1,22);
cout<<" ";
}
int byk=0;
while(byk!=jml)
{
for(int i=69-byk*6;i<=75-byk*6;i++)
{
gotoxy(i+1,20);
cout<<" 0";
gotoxy(i,21);
cout<<"=("<kar<<")=";
gotoxy(i+1,22);
cout<<"| |";
delay();
if(i!=75-byk*6)
{ gotoxy(+1,20);
cout<<" ";
gotoxy(i,21);
cout<<" ";
gotoxy(i+1,22);
cout<<" ";
}
}
}
}
}
void input()
{
gotoxy(1,1);
cout<<"1.Enqueue";
gotoxy(1,2);
cout<<"2.Dequeue"; gotoxy(1,3);
cout<<"3.Exit";
do
{
gotoxy(1,4);
cout<<"masukkan pilihan anda[1/2/3] : ";
gotoxy(32,4);
cin>>pil;
gotoxy(32,4);
cout<<" ";
switch(pil)
{
case '1':
{
if(jml<10)
{
jml=jml+1; enqueue();
}
else
{
gotoxy(1,8);
cout<<"antrean penuh !"; delay();
gotoxy(1,8);
cout<<" ";
}
break;
}
case '2':
{
dequeue();
break;
}
case '3':
{
exit(1);
break;
}
} }
while(1);
}
void main()
{
buatnodebaru();
jml=0;
clrscr(); input();
getch();
}
void delay()
{
for(int y=1;y<100;y++) for(int x=1;x<100;x++)
for(int p=1;p<100;p++)
cout<<"";
}
}
#include
#include
char pil;
int jml;
void delay();
struct node
{
char kar;
node *next;
}
node *tail; //ekor node *now;
node *head;
{
tail=NULL; head=NULL;
}
void push(char ch)
{
now=new node;
if
{ (head==NULL)
{
now->kar=ch;
now->next=NULL;
tail=now; head=now;
}
else
{
now->kar=ch;
now->next=NULL;
tail->next = now;
tail=now;
}
}
void enqueue()
{
int i;
char temp; gotoxy(1,6);
cout<<" ";
gotoxy(1,8);
cout<<" ";
gotoxy(1,6); cout<<" Masukkan @ karakter : ";
cin>>temp;
gotoxy(1,6); cout<<" ";
push(temp);
for(i=1;i<= 75-jml*6;i++)
{
gotoxy(i+1,20);
cout<<" O";
gotoxy(i,21);
cout<<"=("<
cout<<"| |";
delay();
if(i!=75-jml*6)
{ gotoxy(i+1,20);
cout<<" ";
gotoxy(i,21);
cout<<" ";
gotoxy(i+1,22);
cout<<" ";
}
}
}
void dequeue()
{
if(head==NULL)
{ gotoxy(1,8);
cout<<"antrean kosong !";
delay();
}
else
{
jml=jml-1;
char delete_element=head->kar;
node *temp; temp=head;
head=head->next;
delete temp;
for(inti=69;i<=76;i++)
{
gotoxy(i+1,20);
cout<<" O";
gotoxy(i,21); cout<<"=("<
cout<<"| |";
delay();
gotoxy(i+1,20);
cout<<" "
gotoxy(i,21);
cout<<" ";
gotoxy(i+1,22);
cout<<" ";
}
int byk=0;
while(byk!=jml)
{
for(int i=69-byk*6;i<=75-byk*6;i++)
{
gotoxy(i+1,20);
cout<<" 0";
gotoxy(i,21);
cout<<"=("<
gotoxy(i+1,22);
cout<<"| |";
delay();
if(i!=75-byk*6)
{ gotoxy(+1,20);
cout<<" ";
gotoxy(i,21);
cout<<" ";
gotoxy(i+1,22);
cout<<" ";
}
}
}
}
}
void input()
{
gotoxy(1,1);
cout<<"1.Enqueue";
gotoxy(1,2);
cout<<"2.Dequeue"; gotoxy(1,3);
cout<<"3.Exit";
do
{
gotoxy(1,4);
cout<<"masukkan pilihan anda[1/2/3] : ";
gotoxy(32,4);
cin>>pil;
gotoxy(32,4);
cout<<" ";
switch(pil)
{
case '1':
{
if(jml<10)
{
jml=jml+1; enqueue();
}
else
{
gotoxy(1,8);
cout<<"antrean penuh !"; delay();
gotoxy(1,8);
cout<<" ";
}
break;
}
case '2':
{
dequeue();
break;
}
case '3':
{
exit(1);
break;
}
} }
while(1);
}
void main()
{
buatnodebaru();
jml=0;
clrscr(); input();
getch();
}
void delay()
{
for(int y=1;y<100;y++) for(int x=1;x<100;x++)
for(int p=1;p<100;p++)
cout<<"";
}
}
Posting Komentar