Reputation:
I'm having trouble running this program: I'm trying to have the user input
their choices on the menu (A,B,C,D or E), if they select the yes option
. If not, then it goes straight to calculation of the total sales price. But whenever I select yes, it seems to repeat the display menu and does not show the choices. Please help I'm fairly new to c++
#include <iostream>
#include <iomanip>
using namespace std;
int main()
{
double a = 5.99, b = 4.99, c = 4.99, d = 5.99, e = 9.99, totalprice;
const double TAX = 0.13;
int choice = 0;
char (answer);
do
{
cout << "\nGood day! Welcome to The Bakery! What would you like today?\n";
cout << "\nMenu\n Price"<< endl;
cout << "A: Earl Gray Tea and Biscuits - $" << a << endl;
cout << "B: Coffee and a blueberry scone - $" << b << endl;
cout << "C: Espresso and a tea biscuit - $" << c << endl;
cout << "D: Coffee and a Muffin- $" << d << endl;
cout << "E: The Assorted Tea, Scones, and Biscuits Platter- $" << e << endl;
cout << "\nAre there any addtional orders? 'Y' or 'N'\n" << endl;
cin >> answer;
if (answer == 'Y' || answer == 'y')
{ //Display Choice
cout << "\nYour choice?\n" << endl;
}
if (choice == 'A' || choice == 'a')
{
cout << "A: Earl Gray Tea and Biscuits" << a << endl;
}
if (choice == 'B' || choice == 'b')
{
cout << "B: Coffee and a blueberry scone" << b << endl;
}
if (choice == 'C' || choice == 'c')
{
cout << "A: Earl Gray Tea and Biscuits" << c << endl;
}
if (choice == 'D' || choice == 'd')
{
cout << "D: Coffee and a Muffin" << d << endl;
}
if (choice == 'E' || choice == 'e')
{
cout << "E: The Assorted Tea, Scones, and Biscuits Platter" << e << endl;
}
else if (answer == 'N' || answer == 'n')
{
cin >> totalprice;
cout << "The final bill for today is ";
}
else //Displaying error message
{
cout << "Invalid input";
}
} while (answer != 'Y' && answer != 'y');
}
Upvotes: 1
Views: 21399
Reputation: 27
In your do while you forget to take in your choice. It would be simpler to do this.
#include <iostream>
#include <iomanip>
using namespace std;
int main() {
double a = 5.99, b = 4.99, c=4.99, d=5.99, e=9.99, totalprice;
const double tax = 0.13;
char answer;
char choice;
Then you would output what your menu and ask if there is any additional orders. And take in there answer input.
do {
if(answer == 'Y' || 'y') {
cout << "Your choice?" << endl;
cin << choice
if(choice == 'A' || choice == 'a') {
cout << "A: Earl Gray Tea and Biscuits" << a << endl;
totalprice = totalprice + a;
} else if(choice == 'B' || choice == 'b') {
cout << "B: Coffee and a blueberry scone" << b << endl;
totalprice = totalprice + b;
} else if(choice == 'C' || choice == 'c') {
cout << "C: Espresso and a tea biscuit" << c << endl;
totalprice = totalprice + c;
} else if(choice == 'D' || choice == 'd') {
cout << "D: Coffee and a Muffin " << d << endl;
totalprice = totalprice + d;
} else if(choice == 'E' || choice == 'e') {
cout << "E: The Assorted Tea, Scones, and Biscuits Platter " << e << endl;
totalprice = totalprice + e;
}
cout<< "\Are there any additional orders? Y or N << endl;
cin << answer;
} while(answer != 'N' || answer !='n');
totalprice = totalprice * tax;
cout << "The final bill for today is $" << totalprice << endl;
Upvotes: 0
Reputation: 1814
Variable choice should be a character and you have to add cin to receive the input for choice
#include <iostream>
#include <iomanip>
using namespace std;
int main()
{
double a = 5.99, b = 4.99, c = 4.99, d = 5.99, e = 9.99, totalprice;
const double TAX = 0.13;
char choice;
char answer;
do
{
cout << "\nGood day! Welcome to The Bakery! What would you like today?\n";
cout << "\nMenu\n Price"<< endl;
cout << "A: Earl Gray Tea and Biscuits - $" << a << endl;
cout << "B: Coffee and a blueberry scone - $" << b << endl;
cout << "C: Espresso and a tea biscuit - $" << c << endl;
cout << "D: Coffee and a Muffin- $" << d << endl;
cout << "E: The Assorted Tea, Scones, and Biscuits Platter- $" << e << endl;
cin >> choice;
cout << "\nAre there any addtional orders? 'Y' or 'N'\n" << endl;
cin >> answer;
if (answer == 'Y' || answer == 'y')
{ //Display Choice
cout << "\nYour choice?\n" << endl;
}
if (choice == 'A' || choice == 'a')
{
cout << "A: Earl Gray Tea and Biscuits" << a << endl;
}
if (choice == 'B' || choice == 'b')
{
cout << "B: Coffee and a blueberry scone" << b << endl;
}
if (choice == 'C' || choice == 'c')
{
cout << "A: Earl Gray Tea and Biscuits" << c << endl;
}
if (choice == 'D' || choice == 'd')
{
cout << "D: Coffee and a Muffin" << d << endl;
}
if (choice == 'E' || choice == 'e')
{
cout << "E: The Assorted Tea, Scones, and Biscuits Platter" << e << endl;
}
else if (answer == 'N' || answer == 'n')
{
cin >> totalprice;
cout << "The final bill for today is ";
}
else //Displaying error message
{
cout << "Invalid input";
}
} while (answer != 'Y' && answer != 'y');
}
Upvotes: 1