This site's syntax highlighting hints at one mistake.
cout << 'Enter coupon value (percentage off 1-100): ";
You begin this with a single quote, but end with a double quote.
Strings literals always have double quotes " ". Individual character literals have single quotes ' '.
Multi-line bodies of if-statements MUST be surrounded by { } braces. Lines 37 to 43 suggests you want { } around them.
1 2
cout << "Enter coupon type (C/P): "; cin >> coupType;
if (coupType == 'C') {
Your indentation here is very misleading. These statements should all be on the same indentation level of code. Also, avoid putting more than one semi-colon on one line.
Right now you have it like this:
1 2 3 4 5 6 7
if (a)
{
statement;
statement;
else
statement;
}
The else has no if paired with it.
You need to do this:
1 2 3 4 5 6 7 8 9
if (a)
{
statement;
statement;
}
else
{
statement;
}
Your first problem are line 25 and 26. On 25 you prompt the user to enter a character "Y" or "N". On line 26 "cin" is expecting you to enter a number. By entering a letter it causes "cin" to fail and is unusable for the rest of the program.
Although a "char" is a type of int it is not as interchangeable as you might think.
Your variables "coupon" and "coupType" should be defined as a "char" not an "int".
Another point: Do not expect the user to follow directions and enter only capital letters. Either make sure the case is correct with "std::tolower()" or "std::toupper()" from the "cctype" header file or use the if statement as: if (coupon =='Y' || coupon == 'y') This way either method will deal with whatever the user enters. The same applies for the coupon code.