N C++, You are to use the started code provided with QUEUE Container Adapter methods and provide the implementation of a requested functionality outlined below. Scenario: A local restaurant has hired you to develop an application that will manage customer orders. Each order will be put in the queue and will be called on a first come first served bases. Develop the menu driven application with the following menu items: Add order Next order Previous order Delete order Order Size View order list View current order Order management will be resolved by utilization of an STL-queue container’s functionalities and use of the following Queue container adapter functions: enQueue: Adds the order in the queue DeQueue: Deletes the order from the queue Peek: Returns the order that is top in the queue without removing it IsEmpty: checks do we have any orders in the queue Size: returns the number of orders that are in the queue While adding a new order in the queue, the program will be capable of collecting the following order information: Name on order Order description Order total Order tip Date of order The started code: #include #include #include using namespace std; class patient { / /Creates class for patient variable public: string firstName; string insuranceType; string lastName; string ssn; string address; string visitDate; }; queue p; void enqueue() //Enqueues patient details from console input { patient pa; cout << "Please enter Patient First Name:"; cin >> pa.firstName; cout << "Please enter Patient Last Name:"; cin >> pa.lastName; cout << "Please enter Patient insurance type:"; cin >> pa.insuranceType; cout << "Please enter Patient SSN:"; cin >> pa.ssn; cout << "Please enter Patient Address:"; cin.ignore(); getline(cin, pa.address); cout << "Please enter Patient Date of Visit:"; cin >> pa.visitDate; p.push(pa); } patient dequeue() //Removes patient from queue { patient pa; if (!p.empty()) { pa = p.front(); p.pop(); } return pa; } void peek() //Returns current patient at the front of the queue { if (!p.empty()) { patient tmp = p.front(); cout << "Patient Name is " << tmp.firstName<< endl; } } int main() { int x = 0; int n; patient last; while (x == 0) { //Prompts for Menu Selection while selection = 0, which is defaulted to 0 cout << "Welcome to Dental Associates of Kansas City" << endl; cout << "**************************************************" << endl; cout << "To get started, please select an option from the menu below:" << endl; cout << "1. Add patient" << endl; cout << "2. Next patient" << endl; cout << "3. Previous patient" << endl; cout << "4. Delete patient" << endl; cout << "5. View current" << endl; cout << "6. Exit this program" << endl; cout << "Enter the number of the action you would like to perform: "; cin >> n; if (n == 1) { enqueue(); } else if (n == 2) { last = dequeue(); peek(); } else if (n == 3) { cout << last.firstName << endl; } else if (n == 4) { last = dequeue(); } else if (n == 5) { peek(); } else if (n == 6) { exit(0); } } }

Computer Networking: A Top-Down Approach (7th Edition)
7th Edition
ISBN:9780133594140
Author:James Kurose, Keith Ross
Publisher:James Kurose, Keith Ross
Chapter1: Computer Networks And The Internet
Section: Chapter Questions
Problem R1RQ: What is the difference between a host and an end system? List several different types of end...
icon
Related questions
Question

IN C++, 

You are to use the started code provided with QUEUE Container Adapter methods and provide the implementation of a requested functionality outlined below.

 

Scenario:

A local restaurant has hired you to develop an application that will manage customer orders.  Each order will be put in the queue and will be called on a first come first served bases.

Develop the menu driven  application with the following menu items:

  1. Add order
  2. Next order
  3. Previous order
  4. Delete order
  5. Order Size
  6. View order list
  7. View current order

Order management will be resolved by utilization of an STL-queue container’s functionalities and use of the following Queue container adapter functions:

  1. enQueue:  Adds the order in the queue
  2.  DeQueue:  Deletes the order from the queue
  3. Peek: Returns the order that is top in the queue without removing it
  4. IsEmpty: checks do we have any orders in the queue
  5. Size:  returns the number of orders that are in the queue

While adding a new order in the queue, the program will be capable of collecting the following order information:

  1. Name on order
  2. Order description
  3. Order total
  4. Order tip
  5. Date of order

 

The started code:

 

#include <iostream>

#include <queue>

#include <string>

using namespace std;

class patient {

/ /Creates class for patient variable

public:

string firstName;

string insuranceType;

string lastName;

string ssn;

string address;

string visitDate;

};

queue <patient> p;

void enqueue()

//Enqueues patient details from console input

{

patient pa;

cout << "Please enter Patient First Name:";

cin >> pa.firstName;

cout << "Please enter Patient Last Name:";

cin >> pa.lastName;

cout << "Please enter Patient insurance type:";

cin >> pa.insuranceType;

cout << "Please enter Patient SSN:";

cin >> pa.ssn;

cout << "Please enter Patient Address:";

cin.ignore();

getline(cin, pa.address);

cout << "Please enter Patient Date of Visit:";

cin >> pa.visitDate; p.push(pa);

}

patient dequeue()

//Removes patient from queue

{

patient pa;

if (!p.empty()) {

pa = p.front();

p.pop();

}

return pa;

}

void peek()

//Returns current patient at the front of the queue

{

if (!p.empty()) {

patient tmp = p.front();

cout << "Patient Name is " << tmp.firstName<< endl;

}

}

int main() {

int x = 0;

int n;

patient last;

while (x == 0) {

//Prompts for Menu Selection while selection = 0, which is defaulted to 0

cout << "Welcome to Dental Associates of Kansas City" << endl; cout << "**************************************************" << endl;

cout << "To get started, please select an option from the menu below:" << endl;

cout << "1. Add patient" << endl;

cout << "2. Next patient" << endl;

cout << "3. Previous patient" << endl;

cout << "4. Delete patient" << endl;

cout << "5. View current" << endl;

cout << "6. Exit this program" << endl; cout << "Enter the number of the action you would like to perform: ";

cin >> n; if (n == 1) {

enqueue();

} else if (n == 2) {

last = dequeue();

peek();

} else if (n == 3) {

cout << last.firstName << endl;

} else if (n == 4) {

last = dequeue();

} else if (n == 5) {

peek();

} else if (n == 6) {

exit(0);

}

}

}

Expert Solution
trending now

Trending now

This is a popular solution!

steps

Step by step

Solved in 2 steps with 1 images

Blurred answer
Recommended textbooks for you
Computer Networking: A Top-Down Approach (7th Edi…
Computer Networking: A Top-Down Approach (7th Edi…
Computer Engineering
ISBN:
9780133594140
Author:
James Kurose, Keith Ross
Publisher:
PEARSON
Computer Organization and Design MIPS Edition, Fi…
Computer Organization and Design MIPS Edition, Fi…
Computer Engineering
ISBN:
9780124077263
Author:
David A. Patterson, John L. Hennessy
Publisher:
Elsevier Science
Network+ Guide to Networks (MindTap Course List)
Network+ Guide to Networks (MindTap Course List)
Computer Engineering
ISBN:
9781337569330
Author:
Jill West, Tamara Dean, Jean Andrews
Publisher:
Cengage Learning
Concepts of Database Management
Concepts of Database Management
Computer Engineering
ISBN:
9781337093422
Author:
Joy L. Starks, Philip J. Pratt, Mary Z. Last
Publisher:
Cengage Learning
Prelude to Programming
Prelude to Programming
Computer Engineering
ISBN:
9780133750423
Author:
VENIT, Stewart
Publisher:
Pearson Education
Sc Business Data Communications and Networking, T…
Sc Business Data Communications and Networking, T…
Computer Engineering
ISBN:
9781119368830
Author:
FITZGERALD
Publisher:
WILEY