C Program to show an example of Producer and Consumer


 
C Program to show an example of Producer and Consumer
#include<stdio.h>
void main()
{
int ch,n,c1=0,c2=0,produce[23],consume[23];
printf("\nEnter the stack size:");
scanf("%d",&n);
while(1)
{
printf("Producer stack(Stack size:%d)",n);
display(c1,produce);
printf("Consumer Stack(Stack size:%d)",n);
display(c2,consume);
printf("\nCHOICES\n\t1.Producer\n\t2.Consumer\n\t3.Exit\n Enter Your choice:");
scanf("%d",&ch);
switch(ch)
{
case 1:if(c1==n)
        printf("Producer stack is FULL.So producer goes to sleep\n");
       else
        {
          c1++;
          printf("\t\tEnter PRODUCE item is:");
          scanf("%d",&produce[c1]);
        }
        break;
case 2:if(c2==n)
         printf("Consumer stack is FULL.So it goes to sleep!....\n\t Reset the consumer stack\n");
       else if(c1==0)
         printf("Producer stack is EMPTY\n");
       else
        {
         c2++;
         consume[c2]=produce[c1];
         printf("\t\t CONSUME one item");
         c1--;
        }
        break;
case 3:return;
default:printf("\t It is wrong choice,please enter correct choice!!..\n");
}
}
}
display(int c,int stack[])
{
int i;
if(c==0)
 printf("\t Stack is EMPTY\n\t(Now it is sleeping)");
else
 for(i=1;i<=c;i++)
printf("\t %d",stack[i]);
}

Post a Comment

Previous Post Next Post