Hi Folks,

Total C++ newbie here so please excuse my errors! I have been tasked with writing a small program and I can't get it to work. Here is the task description...

"A restaurant has 4 lunch combos for customers to choose:

Combo A : Fried chicken with slaw [price: 4.25]
Combo B : roast beef with mashed potato [price: 5.75]
Combo C : Fish and chips [price:5.25]
Combo D : soup and salad [price: 3.75]

Write a program to calculate how much a party of customers should pay. Suppose the party orders 2 B’s, 1 A and 3 D’s. The casher will enter B, B, A, D, D, D and T into the program. The T means “calculating total of the order”. It is a signal telling the computer that the whole order has been entered and it is time to calculate the total amount the party should pay. Assume there is no sales tax. "

I am supposed to try using while loops and switch for this task. I've been tinkering with this and some of this works but some doesn't. For example, when I enter T to calculate the Total I get nothing returned and the program ends. Same thing happens when I enter option C. I suspect that at least part of the problem is my break statements but any advice is GREATLY appreciated. When the program gets to 'break;' does it go back to 'switch' or somewhere else? Many Thanks!

Here's my totally newbie code ...

``````#include <iostream>

using std::cout;
using std::cin;
using std::endl;

int main( )
{
char item = ' ';
double subTotalA = 0;
double subTotalB = 0;
double subTotalC = 0;
double subTotalD = 0;
double total = 0;

cout << "Enter the combo ordered [A/B/C/D] or T to calculate total: ";
cin >> item;
item = toupper(item);

switch (item)
{

case 'A': while (item == 'A')
{
subTotalA = subTotalA + 4.25;

cout << "Enter the next item ordered [A/B/C/D] or T to calculate the Total. ";
cin >> item;
item = toupper(item);

}
break;

case 'B': while (item == 'B')
{
subTotalB = subTotalB + 5.75;

cout << "Enter the next item ordered [A/B/C/D] or T to calculate the Total. ";
cin >> item;
item = toupper(item);
}
break;

case 'C': while (item == 'C')
{
subTotalC = subTotalC + 5.25;

cout << "Enter the next item ordered [A/B/C/D] or T to calculate the Total. ";
cin >> item;
item = toupper(item);

}
break;

case 'D': while (item == 'D')
{
subTotalD = subTotalD + 4.25;

cout << "Enter the next item ordered [A/B/C/D] or T to calculate the Total. ";
cin >> item;
item = toupper(item);

}
break;

case 'T': while (item == 'T')
{
total = subTotalA + subTotalB + subTotalC + subTotalD;
cout << "The Total is: \$" << total << endl;

}
break;

}

system("pause");
return 0;

}``````
Ancient Dragon commented: thanks for using code tags right +19

Nevermind everyone! I got this one firgured out!

Thanks for looking!

Tyster

Be a part of the DaniWeb community

We're a friendly, industry-focused community of developers, IT pros, digital marketers, and technology enthusiasts meeting, networking, learning, and sharing knowledge.