Bird
Raised Fist0
Swiftprogramming~20 mins

Logical operators in Swift - Practice Problems & Coding Challenges

Choose your learning style10 modes available
Challenge - 5 Problems
🎖️
Logical Operators Master
Get all challenges correct to earn this badge!
Test your skills under time pressure!
❓ Predict Output
intermediate
2:00remaining
Output of combined logical operators
What is the output of this Swift code snippet?
Swift
let a = true
let b = false
let c = true
print(a && b || c)
Atrue
Bfalse
Cnil
DCompilation error
Attempts:
2 left
💡 Hint
Remember that && has higher precedence than || in Swift.
❓ Predict Output
intermediate
2:00remaining
Result of negation and OR operator
What does this Swift code print?
Swift
let x = false
let y = true
print(!x || y)
Anil
Btrue
Cfalse
DRuntime error
Attempts:
2 left
💡 Hint
Negation (!) flips the boolean value.
❓ Predict Output
advanced
2:00remaining
Output of complex logical expression
What is the output of this Swift code?
Swift
let p = false
let q = true
let r = false
print((p || q) && !r)
ACompilation error
Bnil
Ctrue
Dfalse
Attempts:
2 left
💡 Hint
Evaluate inside parentheses first, then apply negation and AND.
❓ Predict Output
advanced
2:00remaining
Value of variable after logical operations
What is the value of variable result after running this Swift code?
Swift
let a = true
let b = false
let c = true
let result = !(a && b) && (b || c)
print(result)
Atrue
Bnil
CCompilation error
Dfalse
Attempts:
2 left
💡 Hint
Break down the expression step by step.
❓ Predict Output
expert
2:00remaining
Output of chained logical operators with precedence
What does this Swift code print?
Swift
let x = false
let y = true
let z = false
print(x || y && !z || false)
Anil
Bfalse
CCompilation error
Dtrue
Attempts:
2 left
💡 Hint
Remember that && has higher precedence than ||, and negation applies before &&.

Practice

(1/5)
1. Which logical operator in Swift returns true only if both conditions are true?
easy
A. == (Equality)
B. || (OR)
C. && (AND)
D. ! (NOT)

Solution

  1. Step 1: Understand the AND operator

    The AND operator (&&) returns true only when both conditions it connects are true.
  2. Step 2: Compare with other operators

    The OR operator (||) returns true if at least one condition is true, NOT (!) flips true to false and vice versa, and == checks equality, not logical combination.
  3. Final Answer:

    && (AND) -> Option C
  4. Quick Check:

    AND = && [OK]
Hint: AND needs both true; look for && operator [OK]
Common Mistakes:
  • Confusing AND (&&) with OR (||)
  • Thinking NOT (!) combines conditions
  • Mixing equality (==) with logical operators
2. Which of the following is the correct syntax to negate a Boolean value isActive in Swift?
easy
A. !isActive
B. not isActive
C. isActive!
D. isActive.not()

Solution

  1. Step 1: Recall the NOT operator syntax

    In Swift, the NOT operator is written as an exclamation mark (!) placed before the Boolean variable to flip its value.
  2. Step 2: Check each option

    !isActive is the correct syntax. The other options are not valid Swift syntax for negation.
  3. Final Answer:

    !isActive -> Option A
  4. Quick Check:

    NOT = ! before variable [OK]
Hint: Use ! before variable to negate Boolean [OK]
Common Mistakes:
  • Writing 'not' instead of '!'
  • Putting ! after variable name
  • Using method calls like .not()
3. What will be the output of this Swift code?
let a = true
let b = false
print(a || b && !b)
medium
A. Syntax Error
B. true
C. false
D. nil

Solution

  1. Step 1: Evaluate the NOT operator

    !b means !false which is true.
  2. Step 2: Evaluate AND operator

    b && !b is false && true which is false.
  3. Step 3: Evaluate OR operator

    a || (result of AND) is true || false which is true.
  4. Final Answer:

    true -> Option B
  5. Quick Check:

    OR with true = true [OK]
Hint: Remember NOT first, then AND, then OR [OK]
Common Mistakes:
  • Ignoring operator precedence
  • Evaluating OR before AND
  • Misunderstanding ! operator
4. Identify the error in this Swift code snippet:
let x = true
let y = false
if x || && y {
    print("Yes")
}
medium
A. Missing parentheses around conditions
B. print statement syntax error
C. Variables x and y are not Boolean
D. Incorrect use of logical operators together

Solution

  1. Step 1: Analyze the if condition syntax

    The condition uses 'x || && y' which combines OR (||) and AND (&&) operators without a proper operand between them.
  2. Step 2: Identify the logical operator misuse

    Logical operators must connect two Boolean expressions. Here, '|| &&' is invalid syntax.
  3. Final Answer:

    Incorrect use of logical operators together -> Option D
  4. Quick Check:

    Operators must connect expressions properly [OK]
Hint: Operators need operands on both sides [OK]
Common Mistakes:
  • Writing two operators without a condition between
  • Assuming parentheses fix operator misuse
  • Confusing variable types with operator errors
5. You want to check if a number n is between 10 and 20 inclusive in Swift. Which condition correctly uses logical operators?
hard
A. n >= 10 && n <= 20
B. n > 10 && n < 20
C. n >= 10 || n <= 20
D. !(n < 10 && n > 20)

Solution

  1. Step 1: Understand the range condition

    To check if n is between 10 and 20 inclusive, n must be greater than or equal to 10 AND less than or equal to 20.
  2. Step 2: Evaluate each option

    n >= 10 || n <= 20 uses OR which is incorrect because it allows values outside the range. n > 10 && n < 20 excludes 10 and 20 by using > and <. !(n < 10 && n > 20) negates an impossible condition and is incorrect.
  3. Final Answer:

    n >= 10 && n <= 20 -> Option A
  4. Quick Check:

    Use AND for range checks [OK]
Hint: Use && to combine lower and upper bounds [OK]
Common Mistakes:
  • Using OR instead of AND for range
  • Excluding boundary values by using > or <
  • Using negation incorrectly for range
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