You are on page 1of 3

// Rohan Deswal XII A 32

// Que 22 Circular Queue

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

class Queue
{
int rear, front;

int size;
int arr[20];
public:
Queue()
{
front = rear = -1;
size = 20;
}

void ins();
void del();
void display();
};

void main()
{
clrscr();
int opt;
Queue queue;
do
{

cout<<"Queues"<<endl;
cout<<"1. Insert"<<endl
<<"2. Delete"<<endl
<<"3. Display"<<endl
<<"4. Exit"<<endl;
cout<<"Your Option: ";
cin>>opt;

if(opt == 1)
queue.ins();
else if(opt == 2)
queue.del();
else if(opt == 3)
queue.display();
else if(opt == 4)
cout<<endl<<"Thank You";
else
cout<<endl<<"Invalid Option"<<endl;

}
while(opt != 4);

getch();

void Queue::ins()
{
if(rear == size - 1)
{
cout<<"Queue Full"<<endl;
}
else
{
int val;
cout<<"Enter Value: ";
cin>>val;
rear = (rear + 1)%size;
arr[rear] = val;
if(front == -1)
front = rear;
}
}
void Queue::del()
{
if(front == -1)
{
cout<<"Queue Empty"<<endl;
}
else
{
cout<<"Value Deleted: "<<arr[front]<<endl;
front = (front + 1)%size;
if(front == rear + 1)
front = rear = -1;
}
}
void Queue::display()
{
if(front == -1)
{
cout<<"Queue Empty"<<endl;
}
else
{
int i=front;
while(i!=rear + 1)
{
cout<<arr[i]<<",";
i = (i + 1)%size;
}
cout<<endl;
}
}
/*********************OUTPUT********************
Queues
1. Insert
2. Delete
3. Display
4. Exit
Your Option: 1
Enter Value: 1
Queues
1. Insert
2. Delete
3. Display
4. Exit
Your Option: 1
Enter Value: 2
Queues
1. Insert
2. Delete
3. Display
4. Exit
Your Option: 1
Enter Value: 3
Queues
1. Insert
2. Delete
3. Display
4. Exit
Your Option: 3
1,2,3,Queues
1. Insert
2. Delete
3. Display
4. Exit
Your Option: 2
Value Deleted: 1
Queues
1. Insert
2. Delete
3. Display
4. Exit
Your Option: 3
2,3,Queues
1. Insert
2. Delete
3. Display
4. Exit
Your Option: 4

Thank You
****************************************************/

You might also like