I was given the below code in c++, //used headesr #include #include using namespace std; //queueu struct struct queue { //to store each order data string ord_name; string ord_dsc; float ord_total;...


I was given the below code in c++,



//used headesr
#include
#include
using namespace std;


//queueu struct
struct queue
{
   //to store each order data
   string ord_name;
   string ord_dsc;
   float ord_total;
   float ord_tip;
   string ord_date;


   //next and previouse order record
   queue *next;
   queue *prev;
};


//to hold first node address of linklist
queue *root;




//function to check is queu empty or not
bool is_Empty()
{
   if (root == NULL)
       return true;
   else
       return false;
}




//function to add order
void addOrder()
{
   queue *order = new queue();


   cout < "\nname="" on="" order:="">
   cin.ignore();
   getline(cin, order->ord_name);

   cout < "\norder="" description:="">

   getline(cin, order->ord_dsc);

   cout < "\norder="" total="" (integer):="">
   cin >> order->ord_total;
   cout < "\norder="" tip="" (integer):="">
   cin >> order->ord_tip;
   cout < "\ndate="" of="" order:="">
   cin.ignore();
   getline(cin, order->ord_date);


   order->prev = NULL;
   order->next = NULL;


   if (is_Empty())
       root = order;
   else
   {
       queue *temp = root;
       while (temp->next != NULL)
           temp = temp->next;
       temp->next = order;
       order->prev = temp;
   }
   cout < "\norder="" placed="">
}




//function to delete order
void delOrder()
{


   if (is_Empty())
       cout < "\nplease="" add="" a="" order="">
   else
   {
       queue *temp = root->next;
       cout < "\nfoloowing="" order="" is="" being="">
       cout < "\nname="" on="" order:="">
       coutord_name;
       cout < "\norder="" description:="">
       cout < root-="">ord_dsc;
       cout < "\norder="" total:="">
       coutord_total;
       cout < "\norder="" tip:="">
       coutord_tip;
       cout < "\ndate="" of="" order:="">
       cout < root-="">ord_date;
       delete root;
       root = temp;
   }
}


//function to view next ordre
void nextOrder()
{
   if (root->next == NULL)
       cout < "\nnext="" order="" not="" placed="">
   else
   {
       cout < "\nnext="" order="">
       cout < "\n\nname="" on="" order:="">
       cout < root-="">next->ord_name;
       cout < "\norder="" description:="">
       cout < root-="">next->ord_dsc;
       cout < "\norder="" total:="">
       cout < root-="">next->ord_total;
       cout < "\norder="" tip:="">
       cout < root-="">next->ord_tip;
       cout < "\ndate="" of="" order:="">
       cout < root-="">next->ord_date;


   }
}


//function to view previouse ordre
void prevOrder()
{
   if (root->prev == NULL)
       cout < "\npreviouse="" order="" not="">
   else
   {
       cout < "\npreviouse="" order="">
       cout < "\n\nname="" on="" order:="">
       cout < root-="">next->prev->ord_name;
       cout < "\norder="" description:="">
       cout < root-="">next->prev->ord_dsc;
       cout < "\norder="" total:="">
       cout < root-="">next->prev->ord_total;
       cout < "\norder="" tip:="">
       cout < root-="">next->prev->ord_tip;
       cout < "\ndate="" of="" order:="">
       cout < root-="">next->prev->ord_date;


   }
}


//functi9on to view current ordre
void displayCurrentOrder()
{
   if (is_Empty())
       cout < "\norder="" queue="" is="">
   else
   {
       cout < "\ncurrent="">
       cout < "\n\nname="" on="" order:="">
       cout < root-="">ord_name;
       cout < "\norder="" description:="">
       cout < root-="">ord_dsc;
       cout < "\norder="" total:="">
       cout < root-="">ord_total;
       cout < "\norder="" tip:="">
       cout < root-="">ord_tip;
       cout < "\ndate="" of="" order:="">
       cout < root-="">ord_date;

   }
}




//get number of ordres
int getOrderSize()
{
   int size = 0;
   queue *temp = root;
   while (temp != NULL)
   {
       size++;
       temp = temp->next;
   }
   return size;
}




//main dricver function
int main()
{
   root = NULL;
   int option = 0;


   while (true){
       cout < "\n\n1)="" -="" add="" order="" \n2)="" -="" next="" order="" \n3)="" -="" previous="">
< "\n4)="" -="" delete="" order\n5)="" -="" order="" size\n6)="" -="" view="" current="">
       cout < "\n\nenter="" your="" choice:="">
       cin >> option;


       switch (option)
       {
       case 1:
           addOrder();
           break;
       case 2:
           nextOrder();
           break;
       case 3:
           prevOrder();
           break;
       case 4:
           delOrder();
           break;
       case 5:
           getOrderSize();
           break;
       case 6:
           displayCurrentOrder();
           break;


       default:
           cout < "\nwrong="" input="">
           break;
       }
   }
   return 0;
}





HOWEVER, I NEED IT TO VIEW ORDER LIST. PLEASE HELP

Jun 08, 2022
SOLUTION.PDF

Get Answer To This Question

Related Questions & Answers

More Questions »

Submit New Assignment

Copy and Paste Your Assignment Here