Bird
Raised Fist0
C++programming~5 mins

If statement in C++ - Time & Space Complexity

Choose your learning style10 modes available
Time Complexity: If statement
O(1)
Understanding Time Complexity

We want to see how the time it takes to run an if statement changes as the input changes.

Does the if statement make the program slower when the input grows?

Scenario Under Consideration

Analyze the time complexity of the following code snippet.


int checkNumber(int n) {
    if (n > 0) {
        return 1;
    } else {
        return 0;
    }
}
    

This code checks if a number is positive and returns 1 if true, otherwise 0.

Identify Repeating Operations

Identify the loops, recursion, array traversals that repeat.

  • Primary operation: A single if condition check.
  • How many times: Exactly once per function call.
How Execution Grows With Input

The if statement runs once no matter what the input number is.

Input Size (n)Approx. Operations
101
1001
10001

Pattern observation: The time stays the same even if the input number grows.

Final Time Complexity

Time Complexity: O(1)

This means the if statement takes the same amount of time no matter how big the input is.

Common Mistake

[X] Wrong: "If statements take longer when the input number is bigger."

[OK] Correct: The if statement only checks the condition once, so input size does not affect its speed.

Interview Connect

Understanding that simple decisions like if statements run in constant time helps you explain how your code behaves clearly and confidently.

Self-Check

"What if we added a loop that runs n times around the if statement? How would the time complexity change?"

Practice

(1/5)
1. What does an if statement do in C++?
easy
A. Defines a new variable
B. Repeats code multiple times
C. Runs code only if a condition is true
D. Ends the program immediately

Solution

  1. Step 1: Understand the purpose of if statement

    An if statement checks a condition and runs code only when that condition is true.
  2. Step 2: Compare with other options

    Repeating code is done by loops, defining variables is done by declarations, and ending the program is done by return or exit.
  3. Final Answer:

    Runs code only if a condition is true -> Option C
  4. Quick Check:

    If statement = runs code if true [OK]
Hint: If checks true condition to run code [OK]
Common Mistakes:
  • Confusing if with loops
  • Thinking if defines variables
  • Believing if ends program
2. Which of the following is the correct syntax for an if statement in C++?
easy
A. if condition { cout << "Yes"; }
B. if condition: cout << "Yes";
C. if (condition) cout << "Yes"
D. if (condition) { cout << "Yes"; }

Solution

  1. Step 1: Recall correct if syntax

    In C++, the condition must be inside parentheses and the code block inside curly braces.
  2. Step 2: Check each option

    if (condition) { cout << "Yes"; } uses parentheses and curly braces correctly. if condition { cout << "Yes"; } misses parentheses. if condition: cout << "Yes"; uses colon which is invalid in C++. if (condition) cout << "Yes" misses curly braces which is allowed only for single statements but here it is incomplete.
  3. Final Answer:

    if (condition) { cout << "Yes"; } -> Option D
  4. Quick Check:

    Parentheses + braces = correct if syntax [OK]
Hint: Use parentheses for condition and braces for code [OK]
Common Mistakes:
  • Missing parentheses
  • Using colon instead of braces
  • Omitting braces for multiple statements
3. What will be the output of this code?
int x = 10;
if (x > 5) {
  cout << "Hello";
} else {
  cout << "Bye";
}
medium
A. Hello
B. Bye
C. HelloBye
D. No output

Solution

  1. Step 1: Evaluate the condition x > 5

    Since x is 10, which is greater than 5, the condition is true.
  2. Step 2: Determine which block runs

    Because the condition is true, the code inside the if block runs, printing "Hello".
  3. Final Answer:

    Hello -> Option A
  4. Quick Check:

    10 > 5 is true, prints Hello [OK]
Hint: Check condition true or false to pick output [OK]
Common Mistakes:
  • Confusing else output
  • Ignoring condition result
  • Assuming both blocks run
4. Find the error in this code snippet:
int a = 3;
if a > 0 {
  cout << "Positive";
}
medium
A. Missing semicolon after if
B. Condition must be inside parentheses
C. Missing curly braces
D. Variable a is not declared

Solution

  1. Step 1: Check the if statement syntax

    The condition in an if statement must be inside parentheses.
  2. Step 2: Identify the error

    The code writes if a > 0 { without parentheses, which is invalid syntax.
  3. Final Answer:

    Condition must be inside parentheses -> Option B
  4. Quick Check:

    If condition needs parentheses [OK]
Hint: Always put condition inside parentheses [OK]
Common Mistakes:
  • Omitting parentheses
  • Thinking semicolon needed after if
  • Assuming braces optional always
5. You want to print "Even" if a number is even, and "Odd" if it is odd. Which code correctly uses an if statement to do this?
int num = 7;
// Your code here
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 how to check even numbers

    A number is even if dividing by 2 leaves remainder 0, checked by num % 2 == 0.
  2. Step 2: Analyze each option

    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, which is wrong. 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 A
  4. Quick Check:

    Modulo 2 equals 0 means even [OK]
Hint: Use modulo (%) to check evenness [OK]
Common Mistakes:
  • Using division instead of modulo
  • Using = instead of ==
  • Reversing condition logic
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