Bird
Raised Fist0
Swiftprogramming~20 mins

If and if-else statements in Swift - Practice Problems & Coding Challenges

Choose your learning style10 modes available
Challenge - 5 Problems
🎖️
If-Else Mastery
Get all challenges correct to earn this badge!
Test your skills under time pressure!
❓ Predict Output
intermediate
2:00remaining
Output of nested if-else statements
What is the output of this Swift code?
Swift
let number = 15
if number % 3 == 0 {
    if number % 5 == 0 {
        print("FizzBuzz")
    } else {
        print("Fizz")
    }
} else {
    print("No match")
}
AFizzBuzz
BFizz
CBuzz
DNo match
Attempts:
2 left
💡 Hint
Check if the number is divisible by 3 and then by 5 inside the nested if.
❓ Predict Output
intermediate
2:00remaining
Output of if-else with multiple conditions
What will be printed by this Swift code?
Swift
let score = 75
if score >= 90 {
    print("Grade A")
} else if score >= 80 {
    print("Grade B")
} else if score >= 70 {
    print("Grade C")
} else {
    print("Grade F")
}
AGrade A
BGrade C
CGrade B
DGrade F
Attempts:
2 left
💡 Hint
Check the conditions from top to bottom and see where 75 fits.
🔧 Debug
advanced
2:00remaining
Identify the error in if-else syntax
What error does this Swift code produce?
Swift
let temperature = 30
if temperature > 25
    print("Hot day")
else
    print("Cool day")
ATypeError: Cannot compare Int with Int
BRuntimeError: Unexpected token
CNo error, prints "Hot day"
DSyntaxError: Missing braces for if and else blocks
Attempts:
2 left
💡 Hint
Swift requires braces {} for if and else blocks.
🧠 Conceptual
advanced
2:00remaining
Understanding if-else statement flow
Consider this Swift code snippet: let x = 10 if x > 5 { print("A") } else if x > 8 { print("B") } else { print("C") } What will be printed?
AB
BC
CA
DNo output
Attempts:
2 left
💡 Hint
The first true condition stops the rest from running.
❓ Predict Output
expert
2:00remaining
Output of complex if-else with logical operators
What is the output of this Swift code?
Swift
let a = 4
let b = 7
if a > 5 && b < 10 {
    print("X")
} else if a <= 5 || b > 10 {
    print("Y")
} else {
    print("Z")
}
AY
BNo output
CZ
DX
Attempts:
2 left
💡 Hint
Evaluate each condition carefully with logical AND and OR.

Practice

(1/5)
1. What does an if statement do in Swift?
easy
A. It runs code only if a condition is true.
B. It repeats code multiple times.
C. It stores data in a variable.
D. It defines a new function.

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, storing data is done by variables, and defining functions uses func.
  3. Final Answer:

    It runs code only if a condition is true. -> Option A
  4. Quick Check:

    If statement = runs code if true [OK]
Hint: If checks true condition to run code, else skips it [OK]
Common Mistakes:
  • Confusing if with loops
  • Thinking if stores data
  • Mixing if with function definitions
2. Which of the following is the correct syntax for an if-else statement in Swift?
easy
A. if condition { } else { }
B. if (condition) then { } else { }
C. if condition then { } else { }
D. if condition: { } else: { }

Solution

  1. Step 1: Recall Swift if-else syntax

    Swift uses if condition { } and else { } blocks without extra keywords like 'then' or colons.
  2. Step 2: Check each option

    if condition { } else { } matches Swift syntax exactly. Options A, B, and C use invalid keywords or punctuation.
  3. Final Answer:

    if condition { } else { } -> Option A
  4. Quick Check:

    Swift if-else = if condition { } else { } [OK]
Hint: Swift uses braces {} without 'then' or colons in if-else [OK]
Common Mistakes:
  • Adding 'then' keyword
  • Using colons after if or else
  • Putting condition in parentheses unnecessarily
3. What will be printed by this Swift code?
let number = 10
if number > 5 {
    print("Big")
} else {
    print("Small")
}
medium
A. Small
B. No output
C. 10
D. Big

Solution

  1. Step 1: Evaluate the condition

    The variable number is 10. The condition number > 5 is true because 10 is greater than 5.
  2. Step 2: Determine which block runs

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

    Big -> Option D
  4. Quick Check:

    10 > 5 is true, so prints "Big" [OK]
Hint: Check condition true? Run if block, else run else block [OK]
Common Mistakes:
  • Confusing which block runs
  • Printing variable instead of string
  • Ignoring condition result
4. Find the error in this Swift code:
let age = 18
if age >= 18
    print("Adult")
else
    print("Minor")
medium
A. Variable age should be a string
B. Wrong comparison operator
C. Missing braces { } around if and else blocks
D. No error, code is correct

Solution

  1. Step 1: Check Swift if-else syntax

    Swift requires braces { } around the code blocks after if and else.
  2. Step 2: Identify missing braces

    The code lacks braces after if age >= 18 and else, causing a syntax error.
  3. Final Answer:

    Missing braces { } around if and else blocks -> Option C
  4. Quick Check:

    Swift needs braces for if-else blocks [OK]
Hint: Always use { } after if and else in Swift [OK]
Common Mistakes:
  • Omitting braces in if-else
  • Using wrong operators
  • Wrong variable types
5. You want to write Swift code that prints "Positive", "Negative", or "Zero" depending on the value of an integer variable num. Which code correctly uses if-else statements to do this?
hard
A. if num >= 0 { print("Positive") } else if num <= 0 { print("Negative") } else { print("Zero") }
B. if num > 0 { print("Positive") } else if num < 0 { print("Negative") } else { print("Zero") }
C. if num > 0 { print("Positive") } else { print("Negative") } print("Zero")
D. if num == 0 { print("Zero") } else if num > 0 { print("Negative") } else if num < 0 { print("Positive") }

Solution

  1. Step 1: Understand the conditions needed

    We need to check if num is greater than 0, less than 0, or exactly 0.
  2. Step 2: Analyze each option

    if num > 0 { print("Positive") } else if num < 0 { print("Negative") } else { print("Zero") } correctly checks >0, then <0, else zero. if num >= 0 { print("Positive") } else if num <= 0 { print("Negative") } else { print("Zero") } wrongly overlaps conditions. if num > 0 { print("Positive") } else { print("Negative") } print("Zero") prints "Zero" always. if num == 0 { print("Zero") } else if num > 0 { print("Negative") } else if num < 0 { print("Positive") } incorrectly prints "Negative" for positive numbers and "Positive" for negative numbers.
  3. Final Answer:

    if num > 0 { print("Positive") } else if num < 0 { print("Negative") } else { print("Zero") } -> Option B
  4. Quick Check:

    Check >0, else if <0, else zero [OK]
Hint: Check positive first, then negative, else zero last [OK]
Common Mistakes:
  • Overlapping conditions causing wrong output
  • Printing zero outside else block
  • Wrong order of conditions
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