Added codes for assignment 31 and 32 given by ma'am
This commit is contained in:
parent
7d0dce2d87
commit
0f46df2318
210
assignment-31 (double-ended queue).cpp
Normal file
210
assignment-31 (double-ended queue).cpp
Normal file
@ -0,0 +1,210 @@
|
||||
#include <iostream>
|
||||
using namespace std;
|
||||
|
||||
#define SIZE 5
|
||||
|
||||
class Dequeue
|
||||
{
|
||||
|
||||
int a[10], front, rear, count;
|
||||
|
||||
public:
|
||||
Dequeue()
|
||||
{
|
||||
front = -1;
|
||||
rear = -1;
|
||||
count = 0;
|
||||
}
|
||||
void addBegin(int item)
|
||||
{
|
||||
int i;
|
||||
if (front == -1)
|
||||
{
|
||||
front++;
|
||||
rear++;
|
||||
a[rear] = item;
|
||||
count++;
|
||||
}
|
||||
else if (rear >= SIZE - 1)
|
||||
{
|
||||
cout << "\nInsertion is not possible,overflow!!!!";
|
||||
}
|
||||
else
|
||||
{
|
||||
for (i = count; i >= 0; i--)
|
||||
{
|
||||
a[i] = a[i - 1];
|
||||
}
|
||||
a[i] = item;
|
||||
count++;
|
||||
rear++;
|
||||
}
|
||||
}
|
||||
void addEnd(int item)
|
||||
{
|
||||
|
||||
if (front == -1)
|
||||
{
|
||||
front++;
|
||||
rear++;
|
||||
a[rear] = item;
|
||||
count++;
|
||||
}
|
||||
else if (rear >= SIZE - 1)
|
||||
{
|
||||
cout << "\nInsertion is not possible,overflow!!!";
|
||||
return;
|
||||
}
|
||||
else
|
||||
{
|
||||
a[++rear] = item;
|
||||
}
|
||||
}
|
||||
void deleteFront()
|
||||
{
|
||||
if (front == -1)
|
||||
{
|
||||
cout << "Deletion is not possible:: Dequeue is empty";
|
||||
return;
|
||||
}
|
||||
else
|
||||
{
|
||||
if (front == rear)
|
||||
{
|
||||
front = rear = -1;
|
||||
return;
|
||||
}
|
||||
cout << "The deleted element is " << a[front];
|
||||
front = front + 1;
|
||||
}
|
||||
}
|
||||
void deleteEnd()
|
||||
{
|
||||
if (front == -1)
|
||||
{
|
||||
cout << "Deletion is not possible:Dequeue is empty";
|
||||
return;
|
||||
}
|
||||
else
|
||||
{
|
||||
if (front == rear)
|
||||
{
|
||||
front = rear = -1;
|
||||
}
|
||||
cout << "The deleted element is " << a[rear];
|
||||
rear = rear - 1;
|
||||
}
|
||||
}
|
||||
void display()
|
||||
{
|
||||
|
||||
for (int i = front; i <= rear; i++)
|
||||
{
|
||||
cout << a[i] << " ";
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
int main()
|
||||
{
|
||||
int c, item;
|
||||
Dequeue d1;
|
||||
|
||||
do
|
||||
{
|
||||
cout << "\n\n****DEQUEUE OPERATION****\n";
|
||||
cout << "\n1-Insert at beginning";
|
||||
cout << "\n2-Insert at end";
|
||||
cout << "\n3_Display";
|
||||
cout << "\n4_Deletion from front";
|
||||
cout << "\n5-Deletion from rear";
|
||||
cout << "\n6_Exit";
|
||||
cout << "\nEnter your choice<1-6>:";
|
||||
cin >> c;
|
||||
|
||||
switch (c)
|
||||
{
|
||||
case 1:
|
||||
cout << "Enter the element to be inserted:";
|
||||
cin >> item;
|
||||
d1.addBegin(item);
|
||||
break;
|
||||
|
||||
case 2:
|
||||
cout << "Enter the element to be inserted:";
|
||||
cin >> item;
|
||||
d1.addEnd(item);
|
||||
break;
|
||||
|
||||
case 3:
|
||||
d1.display();
|
||||
break;
|
||||
|
||||
case 4:
|
||||
d1.deleteFront();
|
||||
break;
|
||||
case 5:
|
||||
d1.deleteEnd();
|
||||
break;
|
||||
|
||||
case 6:
|
||||
exit(1);
|
||||
break;
|
||||
|
||||
default:
|
||||
cout << "Invalid choice";
|
||||
break;
|
||||
}
|
||||
|
||||
} while (c != 7);
|
||||
return 0;
|
||||
}
|
||||
|
||||
/* ~~~~~~~~~~~~~~~~~~~~~~~~~~ Output ~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
****DEQUEUE OPERATION****
|
||||
|
||||
1-Insert at beginning
|
||||
2-Insert at end
|
||||
3_Display
|
||||
4_Deletion from front
|
||||
5-Deletion from rear
|
||||
6_Exit
|
||||
Enter your choice<1-6>:1
|
||||
Enter the element to be inserted:10
|
||||
|
||||
|
||||
****DEQUEUE OPERATION****
|
||||
|
||||
1-Insert at beginning
|
||||
2-Insert at end
|
||||
3_Display
|
||||
4_Deletion from front
|
||||
5-Deletion from rear
|
||||
6_Exit
|
||||
Enter your choice<1-6>:2
|
||||
Enter the element to be inserted:50
|
||||
|
||||
|
||||
****DEQUEUE OPERATION****
|
||||
|
||||
1-Insert at beginning
|
||||
2-Insert at end
|
||||
3_Display
|
||||
4_Deletion from front
|
||||
5-Deletion from rear
|
||||
6_Exit
|
||||
Enter your choice<1-6>:4
|
||||
The deleted element is 10
|
||||
|
||||
****DEQUEUE OPERATION****
|
||||
|
||||
1-Insert at beginning
|
||||
2-Insert at end
|
||||
3_Display
|
||||
4_Deletion from front
|
||||
5-Deletion from rear
|
||||
6_Exit
|
||||
Enter your choice<1-6>:6
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
|
190
assignment-32 (circular queue).cpp
Normal file
190
assignment-32 (circular queue).cpp
Normal file
@ -0,0 +1,190 @@
|
||||
#include <iostream>
|
||||
using namespace std;
|
||||
|
||||
#define size 5
|
||||
|
||||
class pizza
|
||||
{
|
||||
int porder[size];
|
||||
int front, rear;
|
||||
|
||||
public:
|
||||
pizza()
|
||||
{
|
||||
front = rear = -1;
|
||||
}
|
||||
int qfull()
|
||||
{
|
||||
if (front == (rear + 1) % size)
|
||||
return 1;
|
||||
else
|
||||
return 0;
|
||||
}
|
||||
int qempty()
|
||||
{
|
||||
if (front == -1)
|
||||
return 1;
|
||||
else
|
||||
return 0;
|
||||
}
|
||||
void accept_order(int item)
|
||||
{
|
||||
if (qfull())
|
||||
cout << "\nVery Sorry !!!! No more orders....\n";
|
||||
else
|
||||
{
|
||||
if (front == -1)
|
||||
{
|
||||
front = rear = 0;
|
||||
}
|
||||
else
|
||||
{
|
||||
rear = (rear + 1) % size;
|
||||
}
|
||||
porder[rear] = item;
|
||||
}
|
||||
}
|
||||
void make_payment(int n)
|
||||
{
|
||||
int item;
|
||||
char ans;
|
||||
if (qempty())
|
||||
cout << "\nSorry !!! order is not there...\n";
|
||||
else
|
||||
{
|
||||
cout << "\nDeliverd orders as follows...\n";
|
||||
for (int i = 0; i < n; i++)
|
||||
{
|
||||
item = porder[front];
|
||||
if (front == rear)
|
||||
{
|
||||
front = rear = -1;
|
||||
}
|
||||
else
|
||||
{
|
||||
front = (front + 1) % size;
|
||||
}
|
||||
cout << "\t" << item;
|
||||
}
|
||||
cout << "\nTotal amount to pay : " << n * 100;
|
||||
cout << "\nThank you visit Again....\n";
|
||||
}
|
||||
}
|
||||
void order_in_queue()
|
||||
{
|
||||
int temp;
|
||||
if (qempty())
|
||||
{
|
||||
cout << "\nSorry !! There is no pending order...\n";
|
||||
}
|
||||
else
|
||||
{
|
||||
temp = front;
|
||||
cout << "\nPending Order as follows..\n";
|
||||
while (temp != rear)
|
||||
{
|
||||
cout << "\t" << porder[temp];
|
||||
temp = (temp + 1) % size;
|
||||
}
|
||||
cout << "\t" << porder[temp];
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
int main()
|
||||
{
|
||||
pizza p1;
|
||||
int ch, k, n;
|
||||
do
|
||||
{
|
||||
cout << "\n\t***** Welcome To Pizza Parlor *******\n";
|
||||
cout << "\n1.Accept order\n2.Make_payment\n3.Pending Orders\nEnter u r choice:";
|
||||
cin >> ch;
|
||||
switch (ch)
|
||||
{
|
||||
case 1:
|
||||
cout << "\nWhich Pizza would do u like to have today\n";
|
||||
cout << "\n1.Veg Soya Pizza\n2.Veg butter Pizza\n3.Egg_Pizza";
|
||||
cout << "\nPlease enter your order: ";
|
||||
cin >> k;
|
||||
p1.accept_order(k);
|
||||
break;
|
||||
case 2:
|
||||
cout << "\nHow many Pizza ?";
|
||||
cin >> n;
|
||||
p1.make_payment(n);
|
||||
break;
|
||||
case 3:
|
||||
cout << "\n Following orders are in queue to deliver....as follows..\n";
|
||||
p1.order_in_queue();
|
||||
break;
|
||||
}
|
||||
} while (ch != 4);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
/* ~~~~~~~~~~~~~~~~~~~~~~~ Output ~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
***** Welcome To Pizza Parlor *******
|
||||
|
||||
1.Accept order
|
||||
2.Make_payment
|
||||
3.Pending Orders
|
||||
Enter u r choice:1
|
||||
|
||||
Which Pizza would do u like to have today
|
||||
|
||||
1.Veg Soya Pizza
|
||||
2.Veg butter Pizza
|
||||
3.Egg_Pizza
|
||||
Please enter your order: 1
|
||||
|
||||
***** Welcome To Pizza Parlor *******
|
||||
|
||||
1.Accept order
|
||||
2.Make_payment
|
||||
3.Pending Orders
|
||||
Enter u r choice:2
|
||||
|
||||
How many Pizza ?10
|
||||
|
||||
Deliverd orders as follows...
|
||||
1 2 2 2 2 2 2 2 2 2
|
||||
Total amount to pay : 1000
|
||||
Thank you visit Again....
|
||||
|
||||
***** Welcome To Pizza Parlor *******
|
||||
|
||||
1.Accept order
|
||||
2.Make_payment
|
||||
3.Pending Orders
|
||||
Enter u r choice:3
|
||||
|
||||
Following orders are in queue to deliver....as follows..
|
||||
|
||||
Sorry !! There is no pending order...
|
||||
|
||||
***** Welcome To Pizza Parlor *******
|
||||
|
||||
1.Accept order
|
||||
2.Make_payment
|
||||
3.Pending Orders
|
||||
Enter u r choice:1
|
||||
|
||||
Which Pizza would do u like to have today
|
||||
|
||||
1.Veg Soya Pizza
|
||||
2.Veg butter Pizza
|
||||
3.Egg_Pizza
|
||||
Please enter your order: 3
|
||||
|
||||
***** Welcome To Pizza Parlor *******
|
||||
|
||||
1.Accept order
|
||||
2.Make_payment
|
||||
3.Pending Orders
|
||||
Enter u r choice:
|
||||
4
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
|
Loading…
Reference in New Issue
Block a user