Question : Write a program for a restaurant. Your program should display a main menu that allows the customer to select between the breakfast menu option,lunch menu option, dinner menu option and check out option. After selected an option from the main menu, your program should continue to display a sub-menu that will show the available foods and prices for the selected meal.Your program should allow the customer to select the food and enter the order quantity. Your program should continue to allow the customer to order their food until they select the check out option in the main menu,then only your program will display the order list with the quantity, prices and total amount need to pay by the customer.
This is my coding and I need to improve it to display a receipt of items purchased , the total amount need to be paid and allow the user to enter the cash amount they are going to pay and calculate the balance for them. Please help me.
#include <stdio.h> //header files
#include <ctype.h>
#include <windows.h>
void bfast(); void lunch();
void dinner();
void m_m();
void exit();
int num; float price;
float total;
char choice;
int again;
void main()
{
m_m();
}
void m_m() {
char choice = ' ' ;
printf(" Welcome to D'10 Restaurant. \n ");
printf(" +============================+ \n\n");
printf(" && Please select the meal that you would like to purchase. && \n\n");
printf("\t\t [A] Breakfast\n");
printf("\t\t [B] Lunch\n");
printf("\t\t [C] Dinner\n");
printf("\t\t [D] Exit\n\n");
printf("Enter your choice here : ");
scanf("%c", &choice);
system("cls");
{
if (toupper(choice) == 'A' )
bfast();
else
if (toupper(choice) == 'B')
lunch();
else
if (toupper(choice) == 'C')
dinner();
else
if (toupper(choice) == 'D')
exit();
else
if (toupper(choice) != 'A' , 'B' , 'C' , 'D')
{
m_m();
}
}
}
void bfast() {
int choice = 0; int quantity = 0;
int again = 0;
fflush(stdin);
printf(" Welcome to D'10 Restaurant. \n ");
printf(" +============================+ \n\n");
printf(" $ Breakfast Menu $ \n\n");
printf(" && Please select the food that you would like to purchase. && \n\n");
printf("\t\t [1] Toast - RM 1.00\n");
printf("\t\t [2] Egg Muffin - RM 1.50\n");
printf("\t\t [3] Nasi Lemak - RM 2.00\n");
printf("Enter your choice here : ");
scanf("%d", &choice);
{
if (choice == 1)
{
printf("Enter quantity : ");
scanf("%d", &quantity);
total = 1.00 * quantity ;
printf("Your total amount is RM%.2f , Please pay at the counter\n\n\n ", total);
printf("\nWould you like to buy anything else?\n[1] Yes , [2] No : "); scanf("%d", &again);
system("cls");
if (again == 1 )
bfast();
else
if (again == 2 )
m_m();
else
if (again != 1 , 2)
{
printf("\n\n\t\tSorry Invalid Decision Entered\n\n\n\n");
exit();
}
}
else
if ( choice == 2)
{
printf("Enter quantity : ");
scanf("%d", &quantity);
total = 1.50 * quantity ;
printf("Your total amount is RM%.2f , Please pay at the counter\n\n\n ", total);
printf("\nWould you like to buy anything else?\n[1] Yes , [2] No : "); scanf("%d", &again);
system("cls");
if (again == 1 )
bfast();
else if (again == 2 )
m_m();
else
if (again != 1 , 2)
{
printf("\n\n\t\tSorry Invalid Decision Entered\n\n\n\n");
exit();
}
}
else
if ( choice == 3 )
{
printf("Enter quantity : ");
scanf("%d", &quantity);
total = 2.00 * quantity ;
printf("Your total amount is RM%.2f , Please pay at the counter\n\n\n ", total);
printf("\nWould you like to buy anything else?\n[1] Yes , [2] No : "); scanf("%d", &again);
system("cls");
if (again == 1 )
{
bfast();
}
else
if (again == 2 )
{
m_m();
}
else
if (again != 1 , 2)
{
printf("\n\n\t\tSorry Invalid Decision Entered\n\n\n\n");
exit();
}
}
else
if (choice != 1 , 2 , 3 )
{
fflush(stdin);
system("cls");
printf("\n\n\t\t Invalid Choice Entered\n\n");
bfast();
}
}
}
void lunch() {
int choice; int quantity;
int again;
printf(" Welcome to D'10 Restaurant. \n ");
printf(" +============================+ \n\n");
printf(" $ Lunch Menu $ \n\n");
printf(" && Please select the food that you would like to purchase. && \n\n");
printf("\t\t [1] Fried Rice - RM 4.00\n");
printf("\t\t [2] Mee Goreng- RM 4.00\n");
printf("\t\t [3] Fish Head Curry with Rice - RM 5.00\n");
printf("Enter your choice here : ");
scanf("%d", &choice);
{
if (choice == 1)
{
printf("Enter quantity : ");
scanf("%d", &quantity);
total = 4.00 * quantity ;
printf("Your total amount is RM%.2f , Please pay at the counter\n\n\n ", total);
{
printf("\nWould you like to buy anything else?\n[1] Yes , [2] No : ");
scanf("%d", &again);
system("cls");
if (again == 1 )
lunch();
else
if (again == 2 )
m_m();
else
if (again != 1 , 2)
{
printf("\n\n\t\tSorry Invalid Decision Entered\n\n\n\n");
exit();
}
}
}
else
if ( choice == 2)
{
printf("Enter quantity : ");
scanf("%d", &quantity);
total = 4.00 * quantity ;
printf("Your total amount is RM%.2f , Please pay at the counter\n\n\n ", total);
{
printf("\nWould you like to buy anything else?\n[1] Yes , [2] No : ");
scanf("%d", &again);
system("cls");
if (again == 1 )
lunch();
else
if (again == 2 )
m_m();
else
if (again != 1 , 2)
{
printf("\n\n\t\tSorry Invalid Decision Entered\n\n\n\n");
exit();
}
}
}
else
if ( choice == 3 )
{
printf("Enter quantity : ");
scanf("%d", &quantity);
total = 5.00 * quantity ;
printf("Your total amount is RM%.2f , Please pay at the counter\n\n\n ", total);
{
printf("\nWould you like to buy anything else?\n[1] Yes , [2] No : ");
scanf("%d", &again);
system("cls");
if (again == 1 )
lunch();
else
if (again == 2 )
m_m();
else
if (again != 1 , 2)
{
printf("\n\n\t\tSorry Invalid Decision Entered\n\n\n\n");
exit();
}
}
}
else
if (choice != 1 , 2 , 3)
{
fflush(stdin);
system("cls");
printf("\n\n\t\t Invalid Choice Entered\n\n");
lunch();
}
}
}
void dinner() {
int choice; int quantity;
int again;
printf(" Welcome to D'10 Restaurant. \n ");
printf(" +============================+ \n\n");
printf(" $ Dinner Menu $ \n\n");
printf(" && Please select the food that you would like to purchase. && \n\n");
printf("\t\t [1] Chicken Chop - RM 6.50\n");
printf("\t\t [2] Spagetti - RM 5.50\n");
printf("\t\t [3] Chicken Burger - RM 3.00\n");
printf("Enter your choice here : ");
scanf("%d", &choice);
{
if (choice == 1)
{
printf("Enter quantity : ");
scanf("%d", &quantity);
total = 6.50 * quantity ;
printf("Your total amount is RM%.2f , Please pay at the counter\n ", total);
{
printf("\nWould you like to buy anything else?\n[1] Yes , [2] No : ");
scanf("%d", &again);
system("cls");
if (again == 1 )
dinner();
else
if (again == 2 )
m_m();
else
if (again != 1 , 2)
{
printf("\n\n\t\tSorry Invalid Decision Entered\n\n\n\n");
exit();
}
}
}
else
if ( choice == 2)
{
printf("Enter quantity : ");
scanf("%d", &quantity);
total = 5.50 * quantity ;
printf("Your total amount is RM%.2f , Please pay at the counter\n ", total);
{
printf("\nWould you like to buy anything else?\n[1] Yes , [2] No : ");
scanf("%d", &again);
system("cls");
if (again == 1 )
dinner();
else
if (again == 2 )
m_m();
else
if (again != 1 , 2)
{
printf("\n\n\t\tSorry Invalid Decision Entered\n\n\n\n");
exit();
}
}
}
else
if ( choice == 3 )
{
printf("Enter quantity : ");
scanf("%d", &quantity);
total = 3.00 * quantity ;
printf("Your total amount is RM%.2f , Please pay at the counter\n\n\n ", total);
{
printf("\nWould you like to buy anything else?\n[1] Yes , [2] No : ");
scanf("%d", &again);
system("cls");
if (again == 1 )
dinner();
else
if (again == 2 )
m_m();
else
if (again != 1 , 2)
{
printf("\n\n\t\tSorry Invalid Decision Entered\n\n\n\n");
exit();
}
}
}
else
if (choice != 1 , 2 , 3)
{
fflush(stdin);
system("cls");
printf("\n\n\t\t Invalid Choice Entered\n\n");
dinner();
}
}
}
void exit() {
printf(" Thank You Very Much \n ");
printf(" +============================+ \n\n");
printf(" && Please come again. && \n\n");
[edit]Code block added - OriginalGriff[/edit]