Create a program that filters and displays the correct menu items based on the day that the user enters. Console
Create a
Console
Menu of the Day
COMMAND MENU
Specify the day using the three-letter format (mon, tue, wed, thu, fri, sat, sun). Or, enter 'exit' to exit.
Day: mon
Roast beef 10
Potato soup 6
Baked cod 10
Day: tue
Butter chicken 11
Lamb tikka 12
German forest cake 7
Day: exit
Bye!
Specifications
- A tab-delimited text file named menu.txt that contains the menu items for the current week is attached. Each item has a name (a string), price (an integer), and associated day (a string)
- Use a structure named MenuItem to store the name, price, and day for each menu item.
- When the program starts, it should load the items from the file into a vector of MenuItem objects.
- The user should be able to type a three-letter day code to display the menu items for the specified day.
The user should be able to exit by typing “exit” when prompted for the day.
Everytime I run the code it is blank. Please help.
Note: As any programming language is not mentioned So using C++ to solve the problem
Program:
#include<iostream>
#include<fstream>
#include <vector>
using namespace std;
// define structure menu item
struct menuItemStruct
{
string name,dayName;
int itemPrice;
};
// main function
int main()
{
// open file
ifstream in("menu.txt");
if(in.good()==false)
{
cout<<"Create a input file first ";
exit(0);
}
string dayName;
int itemPrice,i=0,numOfItems;
char n[1000];
vector<menuItemStruct> item;
while(in.getline(n,1000,'\t'))
{
string s(n);
in>>itemPrice;
in>>dayName;
menuItemStruct m;
m.name=n;
m.itemPrice=itemPrice;
m.dayName=dayName;
item.push_back(m);
i++;
}
numOfItems=i;
cout<<"Command Menu"<<endl;
cout<<"specify the day using the three-letter format(mon,tue,wed,thr,fri,sat,sun).Or,enter 'exit' to exit."<<endl;
cout<<"Day: ";
cin>>dayName;
while(dayName!="exit")
{
i=0;
while(i<numOfItems)
{
string inptValue=item[i].dayName;
int priceValue=item[i].itemPrice;
if(inptValue==dayName)
cout<<item[i].name<<"\t"<<priceValue;
i++;
}
cout<<"\n\nDay: ";
cin>>dayName;
}
}
Trending now
This is a popular solution!
Step by step
Solved in 3 steps with 4 images