Bird
Raised Fist0
C++programming~10 mins

If–else statement in C++ - Interactive Code Practice

Choose your learning style10 modes available
Practice - 5 Tasks
Answer the questions below
1fill in blank
easy

Complete the code to check if a number is positive.

C++
int num = 5;
if (num [1] 0) {
    std::cout << "Positive" << std::endl;
}
Drag options to blanks, or click blank then click option'
A>
B==
C<
D!=
Attempts:
3 left
💡 Hint
Common Mistakes
Using '==' instead of '>' to check positivity.
Using '<' which checks for negative numbers.
2fill in blank
medium

Complete the code to print "Even" if the number is even.

C++
int num = 4;
if (num % 2 [1] 0) {
    std::cout << "Even" << std::endl;
}
Drag options to blanks, or click blank then click option'
A<
B!=
C>
D==
Attempts:
3 left
💡 Hint
Common Mistakes
Using '!=' which checks for odd numbers.
Using '>' or '<' which are not suitable here.
3fill in blank
hard

Fix the error in the if–else statement to print "Positive" or "Non-positive".

C++
int num = -3;
if (num [1] 0) {
    std::cout << "Positive" << std::endl;
} else {
    std::cout << "Non-positive" << std::endl;
}
Drag options to blanks, or click blank then click option'
A==
B<=
C>
D!=
Attempts:
3 left
💡 Hint
Common Mistakes
Using '<=' which reverses the logic.
Using '==' which only checks for zero.
4fill in blank
hard

Fill both blanks to print "Adult" if age is 18 or more, otherwise "Minor".

C++
int age = 20;
if (age [1] 18) {
    std::cout << "Adult" << std::endl;
} else {
    std::cout << "[2]" << std::endl;
}
Drag options to blanks, or click blank then click option'
A>=
B<
CMinor
DAdult
Attempts:
3 left
💡 Hint
Common Mistakes
Using '<' instead of '>=' for the condition.
Printing "Adult" in the else block.
5fill in blank
hard

Fill all three blanks to print "Positive", "Negative", or "Zero" based on the value of num.

C++
int num = 0;
if (num [1] 0) {
    std::cout << "Positive" << std::endl;
} else if (num [2] 0) {
    std::cout << "Negative" << std::endl;
} else {
    std::cout << "[3]" << std::endl;
}
Drag options to blanks, or click blank then click option'
A>
B<
CZero
D!=
Attempts:
3 left
💡 Hint
Common Mistakes
Using '!=' which does not distinguish zero.
Mixing up the comparison operators.

Practice

(1/5)
1. What does an if-else statement do in C++?
easy
A. It defines a function.
B. It repeats a block of code multiple times.
C. It chooses between two paths based on a condition.
D. It declares a variable.

Solution

  1. Step 1: Understand the purpose of if-else

    An if-else statement lets the program decide which block of code to run based on a condition.
  2. Step 2: Compare with other options

    Repeating code is done by loops, functions define reusable code, and variables store data, so these are not correct.
  3. Final Answer:

    It chooses between two paths based on a condition. -> Option C
  4. Quick Check:

    If-else = choose path [OK]
Hint: If condition true, run if-block; else run else-block [OK]
Common Mistakes:
  • Confusing if-else with loops
  • Thinking if-else defines functions
  • Mixing variable declaration with control flow
2. Which of the following is the correct syntax for an if-else statement in C++?
easy
A. if (x > 0) { cout << "Positive"; } else { cout << "Non-positive"; }
B. if x > 0 then cout << "Positive" else cout << "Non-positive"
C. if (x > 0) cout << "Positive" else cout << "Non-positive";
D. if x > 0 { cout << "Positive" } else { cout << "Non-positive" }

Solution

  1. Step 1: Check C++ if-else syntax rules

    C++ requires parentheses around the condition and braces around blocks for multiple statements.
  2. Step 2: Analyze each option

    if (x > 0) { cout << "Positive"; } else { cout << "Non-positive"; } uses correct parentheses and braces. Options A and B miss parentheses or use incorrect keywords. if (x > 0) cout << "Positive" else cout << "Non-positive"; misses semicolon after else block.
  3. Final Answer:

    if (x > 0) { cout << "Positive"; } else { cout << "Non-positive"; } -> Option A
  4. Quick Check:

    Correct syntax uses parentheses and braces [OK]
Hint: Use parentheses for condition and braces for blocks [OK]
Common Mistakes:
  • Omitting parentheses around condition
  • Missing braces for multiple statements
  • Using 'then' keyword (not in C++)
3. What will be the output of this code?
int x = 5;
if (x < 3) {
  cout << "Less";
} else {
  cout << "More or equal";
}
medium
A. Less
B. More or equal
C. No output
D. Compilation error

Solution

  1. Step 1: Evaluate the condition x < 3

    Variable x is 5, so 5 < 3 is false.
  2. Step 2: Determine which block runs

    Since condition is false, the else block runs, printing "More or equal".
  3. Final Answer:

    More or equal -> Option B
  4. Quick Check:

    Condition false -> else block output [OK]
Hint: Check condition truth to pick if or else output [OK]
Common Mistakes:
  • Assuming if-block runs when condition is false
  • Confusing output strings
  • Ignoring else block
4. Find the error in this code snippet:
int n = 10;
if n > 5 {
  cout << "Big";
} else {
  cout << "Small";
}
medium
A. Missing parentheses around condition
B. Missing semicolon after cout statements
C. Incorrect else keyword
D. Variable n not declared

Solution

  1. Step 1: Check if statement syntax

    C++ requires parentheses around the condition in if statements.
  2. Step 2: Identify the error

    The code uses if n > 5 without parentheses, which is invalid syntax.
  3. Final Answer:

    Missing parentheses around condition -> Option A
  4. Quick Check:

    if condition needs parentheses [OK]
Hint: Always put condition inside parentheses in if [OK]
Common Mistakes:
  • Omitting parentheses in if condition
  • Forgetting semicolons (though not the main error here)
  • Misreading else keyword
5. You want to write a program that prints "Even" if a number is divisible by 2, otherwise prints "Odd". Which code correctly uses if-else to do this?
hard
A. if (num % 2 = 0) { cout << "Even"; } else { cout << "Odd"; }
B. if (num / 2 == 0) { cout << "Even"; } else { cout << "Odd"; }
C. if (num % 2 != 0) { cout << "Even"; } else { cout << "Odd"; }
D. if (num % 2 == 0) { cout << "Even"; } else { cout << "Odd"; }

Solution

  1. Step 1: Understand divisibility by 2

    A number is divisible by 2 if remainder when divided by 2 is zero, i.e., num % 2 == 0.
  2. Step 2: Check each option's condition

    if (num % 2 == 0) { cout << "Even"; } else { cout << "Odd"; } correctly uses num % 2 == 0. if (num / 2 == 0) { cout << "Even"; } else { cout << "Odd"; } uses division instead of modulo. if (num % 2 = 0) { cout << "Even"; } else { cout << "Odd"; } uses assignment (=) instead of comparison (==). if (num % 2 != 0) { cout << "Even"; } else { cout << "Odd"; } reverses the logic.
  3. Final Answer:

    if (num % 2 == 0) { cout << "Even"; } else { cout << "Odd"; } -> Option D
  4. Quick Check:

    Use modulo == 0 for even check [OK]
Hint: Use modulo (%) and == 0 to check even numbers [OK]
Common Mistakes:
  • Using assignment (=) instead of comparison (==)
  • Using division (/) instead of modulo (%)
  • Reversing if and else blocks
Recommended

Ready to prove it?

Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard