#include<stdio.h>
#include<conio.h>
# define MAX 10
int stack[MAX],topA = -1,topB = MAX;
void main()
{
int i,choice,val;
do
{
printf("Enter any choice from following");
printf("\n1.push stack A");
printf("\n2.pop stack A");
printf("\n3.peek stack A");
printf("\n4.push stack B");
printf("\n5.pop stack B");
printf("\n6.peek stack B");
printf("\n1.Exit");
scanf("%d",&choice);
switch(choice)
{
case 1:printf("Enter value to be pushed\n");
scanf("%d",&val);
pushA(val);
break;
case 2:popA();
break;
case 3:peekA();
break;
case 4:printf("Enter value to be pushed\n");
scanf("%d",&val);
pushB(val);
break;
case 5:popB();
break;
case 6:peekB();
break;
case 7:exit(1);
break;
}
}
while(choice!=7);
getch();
}
void pushA(int val)
{
if(topA==topB-1)
{
printf("Stack is overflow\n");
}
else
{
topA = topA+1;
stack[topA] = val;
printf("Value added\n");
}
}
void pushB (int val)
{
if(topB-1==topA)
{
printf("Stack is overflow\n");
}
else
{
stack[topB--] = val;
printf("Value added\n");
}
}
void popA()
{
if(topA==-1)
{
printf("Stack is underflow\n");
}
else
{
int temp;
temp=stack[topA--];
}
}
void popB()
{
if(topB==MAX)
{
printf("Stack is underflow\n");
}
else
{
int temp;
temp=stack[topB++];
}
}
void peekA()
{
int i;
if(topA==-1)
{
printf("Stack is empty\n");
}
else
{
for(i=topA;i>=0;i--)
{
printf("\n%d",stack[i]);
}
}
}
void peekB()
{
int i;
if(topB==MAX)
{
printf("Stack is empty\n");
}
else
{
for(i=topB;i>MAX;i++)
{
printf("\n%d",stack[i]);
}
}
}
#include<conio.h>
# define MAX 10
int stack[MAX],topA = -1,topB = MAX;
void main()
{
int i,choice,val;
do
{
printf("Enter any choice from following");
printf("\n1.push stack A");
printf("\n2.pop stack A");
printf("\n3.peek stack A");
printf("\n4.push stack B");
printf("\n5.pop stack B");
printf("\n6.peek stack B");
printf("\n1.Exit");
scanf("%d",&choice);
switch(choice)
{
case 1:printf("Enter value to be pushed\n");
scanf("%d",&val);
pushA(val);
break;
case 2:popA();
break;
case 3:peekA();
break;
case 4:printf("Enter value to be pushed\n");
scanf("%d",&val);
pushB(val);
break;
case 5:popB();
break;
case 6:peekB();
break;
case 7:exit(1);
break;
}
}
while(choice!=7);
getch();
}
void pushA(int val)
{
if(topA==topB-1)
{
printf("Stack is overflow\n");
}
else
{
topA = topA+1;
stack[topA] = val;
printf("Value added\n");
}
}
void pushB (int val)
{
if(topB-1==topA)
{
printf("Stack is overflow\n");
}
else
{
stack[topB--] = val;
printf("Value added\n");
}
}
void popA()
{
if(topA==-1)
{
printf("Stack is underflow\n");
}
else
{
int temp;
temp=stack[topA--];
}
}
void popB()
{
if(topB==MAX)
{
printf("Stack is underflow\n");
}
else
{
int temp;
temp=stack[topB++];
}
}
void peekA()
{
int i;
if(topA==-1)
{
printf("Stack is empty\n");
}
else
{
for(i=topA;i>=0;i--)
{
printf("\n%d",stack[i]);
}
}
}
void peekB()
{
int i;
if(topB==MAX)
{
printf("Stack is empty\n");
}
else
{
for(i=topB;i>MAX;i++)
{
printf("\n%d",stack[i]);
}
}
}
No comments:
Post a Comment