Google Search

Monday, April 4, 2011

program to realize circular queue using array


//program to realize circular queue using array

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


int main()
{
  
   int *a;
   int n,front=-1,rear=-1,oprn;
   cout<<"\nEnter max. size of queue : ";
   cin>>n;
   a=new int[n];
   while(1)
   {
      cout<<"\nEnter oprn. to perform (0:EXIT,1:INSERT,2:DELETE) : " ;
      cin>>oprn;
      switch(oprn)
      {
case 0:
   exit(0);


case 1:
 
 
        if((rear+1==front)||((rear==n-1)&&(front==0)))
   {
      cout<<"\nQueue is Full!!";
      getch();
      continue;
   }
        if(rear==n-1)
           rear=0;
   else
      rear++;
     
     
      cout<<"\nEnter data to add at position "<<rear<<" : ";
      cin>>a[rear];
         if(front==-1)
            front=0;
          
 
   break;
case 2:
   if(front==-1)
   {
      cout<<"\nQueue is empty!!";
      getch();
      continue;
   }
          
       cout<<"\nData at position : "<<front<<" : "<<a[front];
    if(front==rear)
    {   front=-1;
                 rear=-1;
        }

        else
        {
                 if(front==n-1)
                    front=0;
                 else
                    front++;
                    
        }
 
   break;

 default:
    continue;


      }
   }
   return 0;
}

0 comments:

Post a Comment