Question

How to stop the program from exiting after display detail. When there is food detail, it...

How to stop the program from exiting after display detail. When there is food detail, it will display and exit the program. What can i do to make it not exit the program and back to main menu.

#include <iostream>
#include <iomanip>
#include<string.h>
using namespace std;

struct food{
int order_id;
string food_code,flavor,customer_id;
string address,name;
int weight,unit_price,qty,contact_number;
struct food *next;
};
  

class Foodsystem{
food *head,*temp,*temp2,*end;
static int id;
  
public:
Foodsystem(){ head=NULL;end=NULL;}

void Place_Order();
void View_food_details();
void Modify_food_details();
void Delete_food_details();
};
  
int Foodsystem::id=1000;
  
void Foodsystem::Place_Order(){
temp=new food;
cout<<endl;
cout<<"enter your name ::";
cin>>temp->name;
cout<<"enter contact number::";
cin>>temp->contact_number;
cin.ignore();
cout<<"enter address::";
getline(cin,temp->address);
cout<<"customer_id::";
getline(cin,temp->customer_id);
cout<<"enter food code u want to order::";
getline(cin,temp->food_code);
cout<<"enter flavor you want";
getline(cin,temp->flavor);
cout<<"enter the food weight in kg";
cin>>temp->weight;
cout<<"enter unit price";
cin>>temp->unit_price;
cout<<"quanity of item you want::";
cin>>temp->qty;
temp->order_id=id++;
if(head==NULL)
{head=temp;end=head;}
else
{end->next=temp;end=temp;}

}
  
void Foodsystem::View_food_details()
{
temp=head;
while(temp){
cout<<"your order id::";
cout<<temp->order_id<<endl;
cout<<"customer_id::";
cout<<temp->customer_id<<endl;
cout<<"food code::";
cout<<temp->food_code<<endl;
cout<<"flavor";
cout<<temp->flavor<<endl;
cout<<"the food weight in kg";
cout<<temp->weight<<endl;
cout<<"unit price";
cout<<temp->unit_price<<endl;
cout<<"quanity of item ::";
cout<<temp->qty<<endl;
cout<<"bill amount";
cout<<temp->unit_price *temp->qty<<endl;
temp=temp->next;
}
}
  


int main() {
// Write C++ code here
Foodsystem fs;
int choice;
while(1)
{
cout<<endl<<"1. Place Order" <<endl<<"2. View the food details"<<endl<<"3. Modify food details"<<endl<<"4. Delete food details"<<endl<<"5. exit"<<endl;
cout<<"enter your choice";
cin>>choice;
switch(choice){
case 1 : fs.Place_Order(); break;
case 2 : fs.View_food_details();break;
// case 3 : fs.Modify_food_details();break;
// case 4 : fs.Delete_food_details();break;
case 5 : exit(0);
default : cout<<"wrong choice";
  
}
}

return 0;
}

Homework Answers

Answer #1

I added a nested while loop in the main function where befor the switch case statements so that now everytime after entering the number the loop gets executed properly. Now the control doesnt exits the program after showing details but it stays to take further inputs from the user and exits only when 5 is pressed. And you have to enter the right data types or else it will fall in an infinite loop.

#include <iostream>
#include <iomanip>
#include<string.h>
using namespace std;

struct food{
int order_id;
string food_code,flavor,customer_id;
string address,name;
int weight,unit_price,qty,contact_number;
struct food *next;
};
  

class Foodsystem{
food *head,*temp,*temp2,*end;
static int id;
  
public:
Foodsystem(){ head=NULL;end=NULL;}

void Place_Order();
void View_food_details();
void Modify_food_details();
void Delete_food_details();
};
  
int Foodsystem::id=1000;
  
void Foodsystem::Place_Order(){
temp=new food();
cout<<endl;
cout<<"enter your name ::";
cin>>temp->name;
cout<<"enter contact number::";
cin>>temp->contact_number;
cin.ignore();
cout<<"enter address::";
getline(cin,temp->address);
cout<<"customer_id::";
getline(cin,temp->customer_id);
cout<<"enter food code u want to order::";
getline(cin,temp->food_code);
cout<<"enter flavor you want";
getline(cin,temp->flavor);
cout<<"enter the food weight in kg";
cin>>temp->weight;
cout<<"enter unit price";
cin>>temp->unit_price;
cout<<"quanity of item you want::";
cin>>temp->qty;
temp->order_id=id++;
if(head==NULL)
{head=temp;end=head;}
else
{end->next=temp;end=temp;}

}
  
void Foodsystem::View_food_details()
{
temp=head;
while(temp){
cout<<"your order id::";
cout<<temp->order_id<<endl;
cout<<"customer_id::";
cout<<temp->customer_id<<endl;
cout<<"food code::";
cout<<temp->food_code<<endl;
cout<<"flavor";
cout<<temp->flavor<<endl;
cout<<"the food weight in kg";
cout<<temp->weight<<endl;
cout<<"unit price";
cout<<temp->unit_price<<endl;
cout<<"quanity of item ::";
cout<<temp->qty<<endl;
cout<<"bill amount";
cout<<temp->unit_price *temp->qty<<endl;
temp=temp->next;
}
}
  


int main() {
// Write C++ code here
Foodsystem fs;
int choice;
while(1)
{
cout<<endl<<"1. Place Order" <<endl<<"2. View the food details"<<endl<<"3. Modify food details"<<endl<<"4. Delete food details"<<endl<<"5. exit"<<endl;
cout<<"enter your choice";
cin>>choice;
while(1){
switch(choice){
case 1 : fs.Place_Order(); break;
case 2 : fs.View_food_details();break;
// case 3 : fs.Modify_food_details();break;
// case 4 : fs.Delete_food_details();break;
case 5 : exit(0);
default : cout<<"wrong choice";
  
}
}
}

return 0;
}
Know the answer?
Your Answer:

Post as a guest

Your Name:

What's your source?

Earn Coins

Coins can be redeemed for fabulous gifts.

Not the answer you're looking for?
Ask your own homework help question
Similar Questions
i want to complete this code to insert a new node in the middle of list...
i want to complete this code to insert a new node in the middle of list (take a node data from user, search the node and insert new node after this node). this is the code #include <iostream> #include <stdlib.h> using namespace std ; struct Node{                int data;                Node *link ;}; struct Node *head=NULL, *tail=NULL; /* pointers to Node*/ void InsertFront(); void InsertRear(); void DeleteFront(); void DeleteRear(); int main(){                int choice;                do{                               cout << "1:...
Write a 4-6 sentence summary explaining how you can use STL templates to create real world...
Write a 4-6 sentence summary explaining how you can use STL templates to create real world applications. In your summary, provide an example of a software project that you can create using STL templates and provide a brief explanation of the STL templates you will use to create this project. After that you will implement the software project you described . Your application must be a unique project and must incorporate the use of an STL container and/or iterator and...
my code has several functions; delete and backward functions are not working, rewrite the code for...
my code has several functions; delete and backward functions are not working, rewrite the code for both functions and check them in the main: #include<iostream> #include<cassert> using namespace std; struct nodeType {    int info;    nodeType *link; }; class linkedList { public:    void initializeList();    bool isEmptyList();    void print();    int length();    void destroyList();    void insertFirst(int newItem);    void insertLast(int newItem);    int front();    linkedList();    void copyList(const linkedList otherList);    void insertNewValue(int value);...
a. Define the class bankAccount to store a bank customer’s account number and balance. Suppose that...
a. Define the class bankAccount to store a bank customer’s account number and balance. Suppose that account number is of type int, and balance is of type double. Your class should, at least, provide the following operations: set the account number, retrieve the account number, retrieve the balance, deposit and withdraw money, and print account information. Add appropriate constructors. b. Every bank offers a checking account. Derive the class checkingAccount from the class bankAccount (designed in part (a)). This class...
Write a template-based class that implements a template-based implementation of Homework 3 that allows for any...
Write a template-based class that implements a template-based implementation of Homework 3 that allows for any type dynamic arrays (replace string by the template in all instances below). • The class should have: – A private member variable called dynamicArray that references a dynamic array of type string. – A private member variable called size that holds the number of entries in the array. – A default constructor that sets the dynamic array to NULL and sets size to 0....
Functions displayGrades and addGrades must be rewritten so that the only parameters they take in are...
Functions displayGrades and addGrades must be rewritten so that the only parameters they take in are pointers or constant pointers. Directions: Using the following parallel array and array of vectors: // may be declared outside the main function const int NUM_STUDENTS = 3; // may only be declared within the main function string students[NUM_STUDENTS] = {"Tom","Jane","Jo"}; vector <int> grades[NUM_STUDENTS] {{78,98,88,99,77},{62,99,94,85,93}, {73,82,88,85,78}}; Be sure to compile using g++ -std=c++11 helpWithGradesPtr.cpp Write a C++ program to run a menu-driven program with the...
In this assignment, you’ll make an inventory system for a store’s items, including produce and books....
In this assignment, you’ll make an inventory system for a store’s items, including produce and books. The starter program is an inventory system for only produce. 1. Include the price of an item by adding to the Item class the protected data member int priceInDollars that stores the price in dollars of an individual item. Write a public function SetPrice with a single int parameter prcInDllrs and returns nothing. SetPrice assigns the value of prcInDllrs to priceInDollars. Modify the AddItemToInventory...
Write a program that will read the information from a file into a list and then...
Write a program that will read the information from a file into a list and then display the list to the screen. Remove the fifth item in the list and display the list again. Ask the program user for an entry into the list and add it to the list. Display the list one last time. disneyin.txt file daisy   123 donald   345 goofy   654 mickey   593 minnie   489 daffy   432 pluto   765 huey   321 dewey   987 lewey   554 porky   333...
Can someone please edit my code so that it satisfies the assignments' requirements? I pasted the...
Can someone please edit my code so that it satisfies the assignments' requirements? I pasted the codes below. Requirement: Goals for This Project:  Using class to model Abstract Data Type  OOP-Data Encapsulation You are asked to write an app to keep track of a relatively small music library. The app should load song information from a data file once the app is started. It should allow user to view, add, remove, and search for songs. The app should...
Menu.cpp isn't working. C++  utilize inheritance to create a banking app. The architecture of the app is...
Menu.cpp isn't working. C++  utilize inheritance to create a banking app. The architecture of the app is up to you as long as you implement some form of inheritance. Below is my code however the credit and the actual menu isn't working. Can i get some help on getting the menu to work properly. // BankAccount.h #ifndef ACCOUNT_H #define ACCOUNT_H #include <string> #include <iostream> using namespace std; class BankAccount { protected : int noOfWithdrawls; private: // Declaring variables    float balance;...