The best way to learn programming is by rolling up your sleeves and doing it! Time to solve some interesting scenario-based coding problems around real-world problems with engaging visuals to imagine the scenario. These questions are based on conditonal statements in C++ that covers If, If-else, If-else-if along with taking input from a user in C++ for making interactive and user-friendly programs.
Outfit Suggestion Based on Weather

On a beautiful day, you need to decide what to wear. Write a program that takes the current temperature as input and suggests the appropriate clothing. If the temperature is above 25°C, recommend wearing a shirt; otherwise, recommend wearing a jacket.
Test Case:
Input: 30
Expected Output: “Wear a shirt.”
Explanation:
This program uses a simple if-else statement to determine the clothing suggestion based on the temperature input. The if statement checks if the temperature is greater than 25°C. If true, it suggests wearing a shirt. If the temperature is 25°C or below, the else statement suggests wearing a jacket.
- The program starts by asking the user to enter the current temperature in Celsius, which is stored in the
temperaturevariable. - The program checks if the temperature is greater than 25°C (
temperature > 25).- If true, it suggests wearing a shirt by printing “Wear a shirt.”
- If the condition is not true, the else block executes and the program prints the message “Wear a jacket.”
#include <iostream>
using namespace std;
int main() {
int temperature;
// Prompting the user to input the current temperature
cout << "Enter the current temperature in °C: ";
cin >> temperature;
// Providing outfit suggestions based on the temperature
if (temperature > 25) {
cout << "Wear a shirt.\n";
} else {
cout << "Wear a jacket.\n";
}
return 0;
}
Amusement Park Ride

You’re at an amusement park, and you want to know if you can ride a roller coaster. The park requires that riders must be at least 120 cm tall. Write a program that takes your height as input and tells you whether you can ride the roller coaster.
Test Case:
Input: 130
Expected Output: “You can ride the roller coaster!”
Explanation:
This program uses an if-else condition to check whether the user’s height meets the minimum requirement. If the height is 120 cm or more, the program allows the user to ride.
- The program begins by asking the user to input their height in centimeters, which is then stored in the
heightvariable. - The program checks if the height is greater than or equal to 120 cm using the condition
(height >= 120). - If the condition is true, it informs the user that they can ride the roller coaster by printing “You can ride the roller coaster!”
- If the condition is false (i.e., the height is less than 120 cm), the program prints “Sorry, you cannot ride the roller coaster.”
- The program thus determines eligibility for the ride based on the user’s height.
#include <iostream>
using namespace std;
int main() {
int height;
// Taking input from the user
cout << "Enter your height (cm): ";
cin >> height;
// Decision-making based on height
if (height >= 120) {
cout << "You can ride the roller coaster!\n";
} else {
cout << "Sorry, you cannot ride the roller coaster.\n";
}
return 0;
}Movie Rating Check

You want to watch a movie, but first, you need to check if you’re old enough. The minimum age requirement for the movie is 18 years. Write a program in C++ to check the eligibility.
Test Case:
Input: 20
Expected Output: You are old enough to watch this movie.
Explanation:
The program asks the user for their age. It then checks if the age is 18 or above using an if-else condition. If true, the program tells the user they can watch the movie. Otherwise, it informs them that they are too young.
- The program starts by asking the user to enter their age, which is stored in the
agevariable. - It then evaluates if the age is 18 or older using the condition
(age >= 18). - If the condition is true, the program outputs “You are old enough to watch this movie.”
- If the condition is false (i.e., the age is less than 18), the program outputs “You are too young to watch this movie.”
- This way, the program determines and communicates if the user meets the age requirement for watching the movie.
#include <iostream>
using namespace std;
int main() {
int age;
cout << "Enter your age: ";
cin >> age;
if (age >= 18) {
cout << "You are old enough to watch this movie." << endl;
} else {
cout << "You are too young to watch this movie." << endl;
}
return 0;
}Fitness App Rewards

You’re using a fitness app that rewards you if you log more than 1000 steps in a day. Write a program in C++ that takes the number of steps logged as input and tells you if you’ve earned a reward.
Test Case:
Input: 1200
Expected Output: “Congratulations! You’ve earned a reward!”
Explanation:
This program uses an if-else statement to determine if the number of logged steps exceeds 1000. If so, it informs the user that they’ve earned a reward. If the steps are 1000 or fewer, no reward is given.
- The program begins by asking the user to enter the number of steps they’ve Jogged, which is stored in the
stepsvariable. - It then checks if the number of steps is greater than 1000 using the condition
(steps > 1000). - If the condition is true (i.e., the user logged more than 1000 steps), the program displays “Congratulations! You’ve earned a reward!”
- If the condition is false (i.e., the user logged 1000 or fewer steps), the program displays “Keep trying for a reward.”
- This approach helps the user know whether they have achieved the required number of steps to earn a reward.
#include <iostream>
using namespace std;
int main() {
int steps; // Variable to store the number of steps logged
// Prompting the user to enter the number of steps logged
cout << "Enter the number of steps logged: ";
cin >> steps;
// Checking if the steps exceed 1000 to determine if a reward is earned
if (steps > 1000) {
cout << "Congratulations! You’ve earned a reward!\n";
} else {
cout << "Keep trying for a reward.\n";
}
return 0;
}Coffee Size Recommendation

You determine the appropriate coffee size based on the amount of coffee you consume. Write a C++ program that takes the volume of coffee in milliliters and recommends a coffee size. If the volume is more than 350 ml, recommend a “Large” size; if it’s between 200 ml and 350 ml, recommend a “Medium” size; and if it’s less than 200 ml, recommend a “Small” size.
Test Case:
Input: 220
Expected Output: “Medium”
Explanation:
The program reads the volume of coffee as input and utilizes if-else if-else statements to determine and print the suitable coffee size based on the provided volume because in this situation out of all conditons only one can be true.
- The program starts by asking the user to input the coffee volume in milliliters, which is stored in the
volumevariable. - It then uses a series of
if-else if-elsestatements to determine the appropriate coffee size based on the volume:- If the volume is greater than 350 ml, the program outputs “Large.”
- If the volume is between 200 ml and 350 ml (inclusive), it outputs “Medium.”
- If the volume is less than 200 ml, it outputs “Small.”
- This helps the user decide on the coffee size based on the amount of coffee they have.
#include <iostream>
using namespace std;
int main() {
double volume;
// Asking the user to input the coffee volume
cout << "Enter the coffee volume in milliliters (ml): ";
cin >> volume;
// Recommending the coffee size based on the volume
if (volume > 350) {
cout << "Large" << endl;
} else if (volume >= 200) {
cout << "Medium" << endl;
} else {
cout << "Small" << endl;
}
return 0;
}Store Discount Eligibility

You’re shopping at a store that offers a discount if you spend $50 or more. Write a C++ program to check if the user is eligible for the discount based on their total purchase amount.
Test Case:
Input: 65.00
Expected Output: You are eligible for a discount!
Explanation:
The program will ask the user for the total purchase amount. Using an if-else condition, it checks if the amount is $50 or more. If true, it confirms that the user is eligible for a discount; otherwise, it informs them that they are not eligible.
- The program begins by asking the user to input their total purchase amount, which is stored in the
purchaseAmountvariable. - It then uses an
if-elsecondition to check if the total amount is $50 or more:- If the amount is $50 or more, the program outputs “You are eligible for a discount!”
- If the amount is less than $50, the program outputs “You are not eligible for a discount.”
- This helps the user determine if they qualify for a store discount based on their purchase amount.
#include <iostream>
using namespace std;
int main() {
float purchaseAmount;
cout << "Enter the total purchase amount: $";
cin >> purchaseAmount;
if (purchaseAmount >= 50) {
cout << "You are eligible for a discount!" << endl;
} else {
cout << "You are not eligible for a discount." << endl;
}
return 0;
}Bank Balance Alert

You want to check your bank balance before making a purchase. If your balance is below $100, you receive an alert that your funds are low. Otherwise, you’re told that your balance is sufficient.
Test Case:
Input: 75.50
Expected Output: Alert! Your balance is low.
Explanation:
The program prompts the user for their bank balance. It uses an if-else condition to check if the balance is below $100. If true, it shows a low balance alert. Otherwise, it informs the user that their balance is sufficient.
- The program starts by asking the user to input their bank balance, which is stored in the
balancevariable. - It then checks if the balance is less than $100 using an
if-elsecondition:- If the balance is below $100, the program displays the alert message “Alert! Your balance is low.”
- If the balance is $100 or more, the program informs the user that their balance is sufficient with the message “Your balance is sufficient.”
- This helps the user understand whether they need to be cautious about their spending based on their current balance.
#include <iostream>
using namespace std;
int main() {
float balance;
cout << "Enter your bank balance: $";
cin >> balance;
if (balance < 100) {
cout << "Alert! Your balance is low." << endl;
} else {
cout << "Your balance is sufficient." << endl;
}
return 0;
}Rental Car Cost Calculator

You need to determine the cost of renting a car based on the number of days rented:
For up to 3 days, the rate is $50 per day.
For 4 to 7 days, the rate is $40 per day for days 4 through 7.
For rentals longer than 7 days, the rate is $30 per day for the days beyond 7, with previous rates still applicable.
Write a program to calculate the total rental cost.
Test Case:
Input: 10 days
Expected Output: “Total rental cost: $410.00”
Explanation:
The program calculates the cost of renting a car based on the number of days rented, using different rates depending on the rental duration:
- The program begins by asking the user for the number of days they rented the car, which is stored in the
daysvariable. - It then calculates the total cost based on the rental duration using different rates:
- For up to 3 days: The cost is calculated at $50 per day.
- For days 4 through 7: The cost is $40 per day for these days.
- For more than 7 days: The cost is $30 per day for the days beyond 7, with the previous rates applied to the initial days.
#include <iostream>
using namespace std;
int main() {
int days;
double cost = 0.0;
// Prompt the user to enter the number of rental days
cout << "Enter the number of days rented: ";
cin >> days;
// Calculate total rental cost based on days rented
if (days <= 3) {
cost = days * 50.0;
} else if (days <= 7) {
cost = 3 * 50.0 + (days - 3) * 40.0;
} else {
cost = 3 * 50.0 + 4 * 40.0 + (days - 7) * 30.0;
}
// Output the total rental cost
cout << "Total rental cost: $" << cost << endl;
return 0;
}Utility Bill Calculator

You need to calculate the utility bill based on the total number of units consumed:
For up to 100 units, the charge is $0.50 per unit. For units between 101 and 200, the rate is $0.75 per unit for the units beyond the first 100. For units exceeding 200, the cost is $1.00 per unit for units above 200, while the previous rates still apply.
Write a program to compute the total utility bill based on these rates.
Test Case:
Input: 250 units
Expected Output: “Total utility bill: $215.00”
Explanation:
The program calculates the utility bill based on the number of units consumed. It uses if-else statements to apply different rates depending on the total units:
- The program starts by asking the user for the number of units consumed, which is stored in the
unitsvariable. - It then calculates the total utility bill based on the number of units, using different rates for different ranges:
- For up to 100 units: The bill is calculated at $0.50 per unit and the first if block will be executed.
- For units between 101 and 200: The cost is $50 for the first 100 units plus $0.75 per unit for the additional units from 101 to 200. So, the else-if condition will be executed.
- For units above 200: The cost includes $50 for the first 100 units, $75 for the next 100 units, plus $1.00 per unit for any units beyond 200. In this case the else block will execute because both the previous conditions were false.
#include <iostream>
using namespace std;
int main() {
int units;
double totalBill = 0.0;
cout << "Enter the number of units consumed: ";
cin >> units;
if (units <= 100) {
totalBill = units * 0.50;
} else if (units <= 200) {
totalBill = 100 * 0.50 + (units - 100) * 0.75;
} else {
totalBill = 100 * 0.50 + 100 * 0.75 + (units - 200) * 1.00;
}
cout << "Total utility bill: $" << totalBill << endl;
return 0;
}Speeding Ticket Calculator

You’re driving and want to avoid a speeding ticket. The speed limit is 60 km/h. If you drive within the speed limit, you’re safe. If you exceed the limit by up to 10 km/h, you get a warning. If you exceed it by more than 10 km/h, you receive a ticket. Write a C++ program to check the speed and assign a ticket for violating the conditions.
Test Case:
Input: 75
Expected Output: You are speeding! You will receive a ticket.
Explanation:
The program takes the user’s speed as input. It first checks if the speed is within the limit (60 km/h). If true, it tells the user they are safe. If false, it checks how much the limit is exceeded by. If the excess is 10 km/h or less, it issues a warning. If the excess is more than 10 km/h, it issues a ticket.
- The program starts by asking the user to enter their driving speed, which is stored in the
speedvariable. - It then uses conditional checks to determine the appropriate response based on the speed:
- If the speed is 60 km/h or less: The first if statememt will execute and program indicates that the user is driving safely.
- If the speed is between 61 km/h and 70 km/h (exceeding the limit by up to 10 km/h): The second condition will execute and program issues a warning to slow down.
- If the speed is more than 70 km/h (exceeding the limit by more than 10 km/h): The else block will execute and program notifies the user that they are speeding and will receive a ticket.
#include <iostream>
using namespace std;
int main() {
int speed;
cout << "Enter your driving speed (km/h): ";
cin >> speed;
if (speed <= 60) {
cout << "You are driving safely." << endl;
} else if (speed <= 70) {
cout << "Warning! Slow down." << endl;
} else {
cout << "You are speeding! You will receive a ticket." << endl;
}
return 0;
}To get a strong grip on if-else statements in C++, it is highly recommended that they be applied to real-world scenarios. As the Syntax Scenario aims to teach coding creatively, by tackling these hands-on exercises, you not only sharpen your problem-solving skills but also gain confidence in writing efficient code. Remember, the more you practice, the more you grow as a programmer. Keep experimenting, keep learning, and soon you’ll be ready to tackle even more complex challenges with ease!
