Bird
Raised Fist0
Swiftprogramming~10 mins

Ternary conditional operator in Swift - Interactive Code Practice

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

Complete the code to assign the larger number to max using the ternary operator.

Swift
let max = [1] b > a ? b : a
Drag options to blanks, or click blank then click option'
A*
B+
C-
D=
Attempts:
3 left
💡 Hint
Common Mistakes
Using arithmetic operators instead of assignment.
Forgetting to assign the result to a variable.
2fill in blank
medium

Complete the code to print "Even" if number is even, otherwise "Odd" using the ternary operator.

Swift
print(number % 2 == 0 ? [1] : "Odd")
Drag options to blanks, or click blank then click option'
A"Odd"
B"Even"
C"Zero"
D"Number"
Attempts:
3 left
💡 Hint
Common Mistakes
Swapping the true and false values.
Using incorrect strings.
3fill in blank
hard

Fix the error in the ternary expression to correctly assign the smaller value to min.

Swift
let min = [1] y < x ? y : x
Drag options to blanks, or click blank then click option'
A=
B+
C-
D*
Attempts:
3 left
💡 Hint
Common Mistakes
Using arithmetic operators instead of assignment.
Omitting the assignment operator.
4fill in blank
hard

Fill both blanks to create a ternary expression that assigns "Adult" if age is 18 or more, otherwise "Minor".

Swift
let status = age [1] 18 [2] "Adult" : "Minor"
Drag options to blanks, or click blank then click option'
A>=
B<
C?
D:
Attempts:
3 left
💡 Hint
Common Mistakes
Swapping the order of operators.
Using wrong comparison operators.
5fill in blank
hard

Fill both blanks to create a ternary expression that assigns the absolute value of number to absValue.

Swift
let absValue = number [1] 0 [2] number : -number
Drag options to blanks, or click blank then click option'
A>
B?
C:
D<
Attempts:
3 left
💡 Hint
Common Mistakes
Mixing up the order of operators.
Using less than instead of greater than.

Practice

(1/5)
1. What does the ternary conditional operator do in Swift?
condition ? valueIfTrue : valueIfFalse
easy
A. Declares a constant value
B. Repeats a block of code multiple times
C. Defines a new function
D. Chooses one of two values based on a condition

Solution

  1. Step 1: Understand the operator structure

    The ternary operator uses a condition followed by a question mark, then two values separated by a colon.
  2. Step 2: Identify its purpose

    It selects the first value if the condition is true, otherwise the second value.
  3. Final Answer:

    Chooses one of two values based on a condition -> Option D
  4. Quick Check:

    Ternary operator = chooses between two values [OK]
Hint: Remember: condition ? trueValue : falseValue picks one [OK]
Common Mistakes:
  • Confusing ternary with loops
  • Thinking it declares variables
  • Mixing it with function syntax
2. Which of the following is the correct syntax for the ternary conditional operator in Swift?
easy
A. condition ? valueIfTrue : valueIfFalse
B. condition : valueIfTrue ? valueIfFalse
C. condition ? (valueIfTrue, valueIfFalse)
D. condition ? valueIfTrue; valueIfFalse

Solution

  1. Step 1: Recall the ternary syntax

    The correct syntax places the condition first, then a question mark, then the true value, a colon, and the false value.
  2. Step 2: Compare options

    Only condition ? valueIfTrue : valueIfFalse matches this exact pattern.
  3. Final Answer:

    condition ? valueIfTrue : valueIfFalse -> Option A
  4. Quick Check:

    Syntax is condition ? true : false [OK]
Hint: Question mark before colon is key in ternary syntax [OK]
Common Mistakes:
  • Swapping question mark and colon
  • Using commas instead of colon
  • Adding semicolons inside ternary
3. What is the output of this Swift code?
let age = 20
let canVote = age >= 18 ? "Yes" : "No"
print(canVote)
medium
A. No
B. Yes
C. true
D. false

Solution

  1. Step 1: Evaluate the condition

    age is 20, which is greater than or equal to 18, so the condition is true.
  2. Step 2: Apply ternary operator

    Since the condition is true, canVote is assigned "Yes".
  3. Final Answer:

    Yes -> Option B
  4. Quick Check:

    age >= 18 is true, so output is "Yes" [OK]
Hint: Check condition result first, then pick true or false value [OK]
Common Mistakes:
  • Confusing true and false branches
  • Assuming boolean output instead of string
  • Ignoring the condition value
4. Identify the error in this Swift code using the ternary operator:
let score = 85
let grade = score > 90 ? "A" : "B" else "C"
medium
A. Using double quotes instead of single quotes
B. Missing parentheses around condition
C. Extra 'else' keyword after ternary operator
D. Incorrect variable declaration

Solution

  1. Step 1: Analyze ternary operator usage

    The ternary operator already includes both true and false values separated by a colon; adding 'else' is invalid syntax.
  2. Step 2: Identify the syntax error

    The 'else' keyword after the ternary expression causes a syntax error.
  3. Final Answer:

    Extra 'else' keyword after ternary operator -> Option C
  4. Quick Check:

    No 'else' after ternary operator [OK]
Hint: Ternary uses colon, never 'else' keyword [OK]
Common Mistakes:
  • Adding 'else' after ternary
  • Confusing ternary with if-else blocks
  • Misplacing colons and question marks
5. Given a dictionary of student scores, use a ternary operator in Swift to create a new dictionary that marks each student as "Pass" if their score is 50 or more, otherwise "Fail".
What is the correct way to write this using dictionary comprehension?
let scores = ["Anna": 75, "Ben": 45, "Cara": 50]
let results = scores.mapValues { score in
    // Fill in here
}
hard
A. score >= 50 ? "Pass" : "Fail"
B. if score >= 50 { "Pass" } else { "Fail" }
C. score > 50 ? "Pass" : "Fail"
D. score >= 50 ? "Fail" : "Pass"

Solution

  1. Step 1: Understand the condition for passing

    Students pass if their score is 50 or more, so condition is score >= 50.
  2. Step 2: Apply ternary operator correctly

    Use ternary to return "Pass" if true, else "Fail".
  3. Final Answer:

    score >= 50 ? "Pass" : "Fail" -> Option A
  4. Quick Check:

    Use condition ? "Pass" : "Fail" for mapping [OK]
Hint: Use mapValues with ternary: condition ? trueVal : falseVal [OK]
Common Mistakes:
  • Using if-else instead of ternary in mapValues
  • Wrong comparison operator (>)
  • Swapping Pass and Fail values
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