A
alisaee
plz check what i have made wrong what is requierd her is to creat class
queue and class stack and run the push,pop operation .
#include<iostream.h>
#include<conio.h>
#include<stdio.h>
class stack
{
public:
spop();
spush();
sout();
void s_Menu();
void Main_Menu();
private:
int list[];
int listsize,item,rear,front;
};
class queue
{
public:
qpop();
qpush();
qout();
void q_Menu();
iempty();
private:
int list2[];
int listsize2,item2;
int rear;
int front;
};
int top=-1;
char ch;
void stack:: Main_Menu()
{
stack s;
queue q;
gotoxy(20,3);cout<<"******************************************";
gotoxy(20,4);cout<<"* *";
gotoxy(20,5);cout<<"* *";
gotoxy(20,6);cout<<"******************************************";
gotoxy(30,9);cout<<"*************************";
gotoxy(30,10);cout<<"* MAIN PROGRAM MENU *";
gotoxy(30,11);cout<<"*Stack Queue Operations *";
gotoxy(30,12);cout<<"* Stack *";
gotoxy(30,13);cout<<"*[Q] Queue *";
gotoxy(30,14);cout<<"*[E] Exit *";
gotoxy(30,15);cout<<"*************************";
//char ch='y';
while((ch!='E')&&(ch!='e'))
{
cout<<"\nEnter your selection : ";
// cin>>ch;
ch = getche();
switch(ch)
{
case 'S','s':
s.s_Menu();
break;
case 'Q','q':
q.q_Menu();
break;
}
} }
void stack:: s_Menu()
{
stack s;
gotoxy(30,9);cout<<"*************************";
gotoxy(30,10);cout<<"* Stack *";
gotoxy(30,11);cout<<"*[P] Stack push *";
gotoxy(30,12);cout<<"*[O] Stack pop *";
gotoxy(30,13);cout<<"*[D] stack Display *";
gotoxy(30,14);cout<<"*[R] Return *";
gotoxy(30,15);cout<<"*************************";
//char ch;
while(ch!='R')
{
// cout<<"\n Enter your selection : ";
// cin>>ch;
ch = getche();
switch(ch)
{
case 'P','p':
s.spush();
break;
case 'O','o':
item=s.spop();
if(item!=-9999)
cout<<"\n The popped value is..."<<item;
break;
case 'D','d':
cout<<"\n The stack is...:";
s.sout();
break;
case 'R','r':
clrscr();
s.Main_Menu();
}
}
}
void queue::q_Menu()
{
queue q;
stack s;
gotoxy(30,9);cout<<"**************************";
gotoxy(30,10);cout<<"* Queue *";
gotoxy(30,11);cout<<"*[P] Queue push *";
gotoxy(30,12);cout<<"*[O] Queue pop *";
gotoxy(30,13);cout<<"*[D] Queue Display *";
gotoxy(30,14);cout<<"*[R] Return *";
gotoxy(30,15);cout<<"**************************";
while(ch!='R')
{
// cout<<"\n Enter your selection : ";
// cin>>ch;
ch = getche();
switch(ch)
{
case 'p','p':
q.qpush();
break;
case 'o','o':
item2=q.qpop();
if(item2 !=-9999)
cout<<"\n The popped value is .."<<item2;
break;
case 'd','d':
cout<<"\n The queue is...:";
q.qout();
break;
case 'r','r':
clrscr();
s.Main_Menu();
}
}
}
void main()
{
stack s;
s.Main_Menu();
}
stack::spush ()
{
cout<<"\n Enter the valu to be pushed : ";
cin>>item;
if (top<listsize)
{
top++;
list[top]=item;
}
else
cout<<"\n The stack is full";
};
stack::spop()
{
int v;
if(top>=0)
{
v=list[top];
top--;
return v;
}
else
{
cout<<"\n stack is empty";
return(-9999);
}
};
stack::sout()
{
int i;
if(top>=0)
{
cout<<"\n";
for (i=top;i>=0;i--)
cout<<list<<" ";
}
};
//****************************************************
queue::qpush()
{
cout<<"\n Enter the value to pushed : ";
cin>>item2;
if (rear+1%listsize2==front)
{
cout<<"\n The queue is full";
}
else
rear=(rear+1)%listsize2;
list2[rear]=item2;
}
queue::qpop()
{
int v2;
if(front!=rear)
{
front=(front+1)%listsize2;
v2=list2[front];
return v2;
}
else
cout<<"\n queue is empty";
return(-9999);// returns a value -9999 if the queue is empty
}
queue::qout()
{
int i2;
i2=front;
while(i2!=rear)
{
i2=(i2+1)%listsize2;
cout<<list2[i2]<<" ";
}
}
queue and class stack and run the push,pop operation .
#include<iostream.h>
#include<conio.h>
#include<stdio.h>
class stack
{
public:
spop();
spush();
sout();
void s_Menu();
void Main_Menu();
private:
int list[];
int listsize,item,rear,front;
};
class queue
{
public:
qpop();
qpush();
qout();
void q_Menu();
iempty();
private:
int list2[];
int listsize2,item2;
int rear;
int front;
};
int top=-1;
char ch;
void stack:: Main_Menu()
{
stack s;
queue q;
gotoxy(20,3);cout<<"******************************************";
gotoxy(20,4);cout<<"* *";
gotoxy(20,5);cout<<"* *";
gotoxy(20,6);cout<<"******************************************";
gotoxy(30,9);cout<<"*************************";
gotoxy(30,10);cout<<"* MAIN PROGRAM MENU *";
gotoxy(30,11);cout<<"*Stack Queue Operations *";
gotoxy(30,12);cout<<"*
gotoxy(30,13);cout<<"*[Q] Queue *";
gotoxy(30,14);cout<<"*[E] Exit *";
gotoxy(30,15);cout<<"*************************";
//char ch='y';
while((ch!='E')&&(ch!='e'))
{
cout<<"\nEnter your selection : ";
// cin>>ch;
ch = getche();
switch(ch)
{
case 'S','s':
s.s_Menu();
break;
case 'Q','q':
q.q_Menu();
break;
}
} }
void stack:: s_Menu()
{
stack s;
gotoxy(30,9);cout<<"*************************";
gotoxy(30,10);cout<<"* Stack *";
gotoxy(30,11);cout<<"*[P] Stack push *";
gotoxy(30,12);cout<<"*[O] Stack pop *";
gotoxy(30,13);cout<<"*[D] stack Display *";
gotoxy(30,14);cout<<"*[R] Return *";
gotoxy(30,15);cout<<"*************************";
//char ch;
while(ch!='R')
{
// cout<<"\n Enter your selection : ";
// cin>>ch;
ch = getche();
switch(ch)
{
case 'P','p':
s.spush();
break;
case 'O','o':
item=s.spop();
if(item!=-9999)
cout<<"\n The popped value is..."<<item;
break;
case 'D','d':
cout<<"\n The stack is...:";
s.sout();
break;
case 'R','r':
clrscr();
s.Main_Menu();
}
}
}
void queue::q_Menu()
{
queue q;
stack s;
gotoxy(30,9);cout<<"**************************";
gotoxy(30,10);cout<<"* Queue *";
gotoxy(30,11);cout<<"*[P] Queue push *";
gotoxy(30,12);cout<<"*[O] Queue pop *";
gotoxy(30,13);cout<<"*[D] Queue Display *";
gotoxy(30,14);cout<<"*[R] Return *";
gotoxy(30,15);cout<<"**************************";
while(ch!='R')
{
// cout<<"\n Enter your selection : ";
// cin>>ch;
ch = getche();
switch(ch)
{
case 'p','p':
q.qpush();
break;
case 'o','o':
item2=q.qpop();
if(item2 !=-9999)
cout<<"\n The popped value is .."<<item2;
break;
case 'd','d':
cout<<"\n The queue is...:";
q.qout();
break;
case 'r','r':
clrscr();
s.Main_Menu();
}
}
}
void main()
{
stack s;
s.Main_Menu();
}
stack::spush ()
{
cout<<"\n Enter the valu to be pushed : ";
cin>>item;
if (top<listsize)
{
top++;
list[top]=item;
}
else
cout<<"\n The stack is full";
};
stack::spop()
{
int v;
if(top>=0)
{
v=list[top];
top--;
return v;
}
else
{
cout<<"\n stack is empty";
return(-9999);
}
};
stack::sout()
{
int i;
if(top>=0)
{
cout<<"\n";
for (i=top;i>=0;i--)
cout<<list<<" ";
}
};
//****************************************************
queue::qpush()
{
cout<<"\n Enter the value to pushed : ";
cin>>item2;
if (rear+1%listsize2==front)
{
cout<<"\n The queue is full";
}
else
rear=(rear+1)%listsize2;
list2[rear]=item2;
}
queue::qpop()
{
int v2;
if(front!=rear)
{
front=(front+1)%listsize2;
v2=list2[front];
return v2;
}
else
cout<<"\n queue is empty";
return(-9999);// returns a value -9999 if the queue is empty
}
queue::qout()
{
int i2;
i2=front;
while(i2!=rear)
{
i2=(i2+1)%listsize2;
cout<<list2[i2]<<" ";
}
}