📖 Scenario: You are creating a simple program to help a store clerk decide discounts based on customer membership and purchase amount.
🎯 Goal: Build a program that uses nested if statements to check if a customer is a member and then check their purchase amount to decide the discount.
📋 What You'll Learn
Create a variable isMember of type bool with value true or false
Create a variable purchaseAmount of type double with a specific value
Use nested if statements to check isMember and then purchaseAmount
Print the correct discount message based on conditions
💡 Why This Matters
🌍 Real World
Stores often give discounts based on membership and purchase amount. This program mimics that decision process.
💼 Career
Understanding nested conditions is important for writing clear decision-making code in many software jobs.
Progress0 / 4 steps
1
Create membership and purchase amount variables
Create a bool variable called isMember and set it to true. Create a double variable called purchaseAmount and set it to 120.0.
C++
Hint
Use bool for true/false and double for decimal numbers.
2
Add a discount threshold variable
Create a double variable called discountThreshold and set it to 100.0.
C++
Hint
This variable will help decide if the purchase amount qualifies for a discount.
3
Write nested if statements to check membership and purchase amount
Write nested if statements: first check if isMember is true. Inside it, check if purchaseAmount is greater than discountThreshold. If both are true, set a string variable discountMessage to "You get a 20% discount!". Otherwise, set discountMessage to "No discount available.". If isMember is false, set discountMessage to "Join our membership for discounts!".
C++
Hint
Remember to include #include <string> at the top to use std::string.
4
Print the discount message
Write a std::cout statement to print the discountMessage variable.
C++
Hint
Use std::cout << discountMessage << std::endl; to print the message.
Practice
(1/5)
1.
What does a nested conditional statement mean in C++?
easy
A. A loop inside a function
B. An if or else inside another if or else
C. A variable declared inside a function
D. A function calling itself
Solution
Step 1: Understand the meaning of nested conditionals
Nested conditionals mean placing one if or else inside another to check multiple conditions step-by-step.
Step 2: Match the definition to the options
An if or else inside another if or else correctly describes this as an if or else inside another if or else.
Final Answer:
An if or else inside another if or else -> Option B
Quick Check:
Nested conditional = if inside if [OK]
Hint: Look for condition inside another condition [OK]
Common Mistakes:
Confusing nested conditionals with loops
Thinking nested means multiple variables
Mixing nested conditionals with recursion
2.
Which of the following is the correct syntax for a nested if statement in C++?
if (x > 0) {
if (y < 10) {
// code
}
}
easy
A. if (x > 0) { if (y < 10) { // code } }
B. if (x > 0) if (y < 10) // code
C. if (x > 0) else if (y < 10) { // code }
D. if (x > 0) { else if (y < 10) { // code } }
Solution
Step 1: Check proper use of braces in nested if
Correct nested if requires braces around inner if block inside outer if.
Step 2: Identify correct syntax option
if (x > 0) { if (y < 10) { // code } } shows braces properly enclosing the inner if inside the outer if, which is correct syntax.
Final Answer:
if (x > 0) { if (y < 10) { // code } } -> Option A
Quick Check:
Braces around nested if blocks = correct syntax [OK]
Hint: Use braces {} to group nested if blocks [OK]
Common Mistakes:
Missing braces causing syntax errors
Using else if incorrectly inside nested if
Placing else without matching if
3.
What is the output of the following C++ code?
int x = 5, y = 8;
if (x > 0) {
if (y < 10) {
std::cout << "A";
} else {
std::cout << "B";
}
} else {
std::cout << "C";
}
medium
A. No output
B. B
C. A
D. C
Solution
Step 1: Evaluate outer if condition
Since x = 5 which is greater than 0, the outer if condition is true, so we enter the first block.
Step 2: Evaluate inner if condition
Inside the outer block, y = 8 which is less than 10, so the inner if condition is true and prints "A".
Final Answer:
A -> Option C
Quick Check:
Both conditions true, print "A" [OK]
Hint: Check outer condition first, then inner [OK]
Common Mistakes:
Ignoring inner condition and printing wrong letter
Confusing else blocks
Assuming else runs when outer if is true
4.
Find the error in this nested conditional code:
int a = 3;
if (a > 0)
if (a < 5)
std::cout << "Yes";
else
std::cout << "No";
else
std::cout << "Maybe";
medium
A. Missing braces cause else to pair with wrong if
B. Syntax error: missing semicolon after if
C. Variable a is not declared
D. No error, code runs fine
Solution
Step 1: Analyze the indentation and else pairing
Without braces, the else pairs with the nearest if, which can cause confusion in nested ifs.
Step 2: Identify the problem caused by missing braces
Here, the else pairs with the inner if, not the outer, which may not be intended and causes logic errors.
Final Answer:
Missing braces cause else to pair with wrong if -> Option A
Quick Check:
Braces needed to avoid else ambiguity [OK]
Hint: Always use braces to avoid else ambiguity [OK]