# CIS 1111 Programming Topic 11 – Restaurant Functions

CIS 1111 Programming Topic 11 – Restaurant Functions

Description:
Write a menu-driven C++ program for food purchases at the baseball stadium’s restaurant. The main program will loop allowing the user to select food items from the menu adding each item to the bill, terminating when the user selects the “End order” item. The program will then calculate and display the total bill with tax (.065) and tip (.20); tip is calculated on the pretax bill.The program also needs to collect payment and calculate change due.
The program needs to validate that the user has entered a valid menu selection and that the amount tendered is enough to cover the bill.
HINT: Use the menu-driven program on pages 318-319 of our textbook as a model.
Requirements:
1.    Functions :
a.    Define a void function without parameters to display the food menu and prices
b.    Define a void function with 4 parameters (bill, totBill, tax, tip) to display the bill
c.    Define a void function with 2 parameters (totBill, amtTendered) to calculate and display the change due
3.    Input validation for menu item choice and amount tendered.
4.    Verify that the customer tendered an amount that is equal to or greater than the total bill.
5.    Output must be labelled and easy to read as shown in the sample output below. Only display 2 decimal points when displaying Total Amount Due and Change Due.
6.    Program must be documented with the following:
a.    // Name
b.    // Date
c.    // Program Name
d.    // Description

See the sample output on the following page.

Sample Output:

1 – Hamburger        \$6.00
2 – Hotdog        \$4.50
3 – Peanuts        \$3.75
4 – Popcorn        \$5.50
5 – Soda        \$2.80
6 – Chips        \$1.00
7 – Water        \$2.00
8 – End order

Bill = \$8.30
Tax = .54
Tip =  \$1.66
Total amount due: \$10.50
Amount tendered: \$10.00
Amount paid is not enough to cover bill, please enter new amount: \$15.00
Change due: \$4.50

Submit:
Zipped folder named LastNameFirstNameCIS1111NameOfAssignment which contains:
2.    Screen shots of your code and output

Range – Low End
(Did not do or did very little effort)    Range – High End
(Used correctly and spent time/effort on programming)
Names of variables are meaningful and the program comments self-document the program    0    2
Met all stated requirements    0    10
Output is correct given the input, and the output is correctly formatted    0    4
Program compiles and executes without any runtime, syntax, or logic errors    0    3
The zipped project folder that includes the C++ .cpp source files and screens shots of the code and console is uploaded to drop box.     0    1
Total Points Possible    0    20