Bird
Raised Fist0
Swiftprogramming~15 mins

Repeat-while loop in Swift - Mini Project: Build & Apply

Choose your learning style10 modes available
Repeat-while Loop in Swift
📖 Scenario: You are creating a simple program that counts up from 1 until it reaches a certain number. This is like counting steps while walking until you reach your destination.
🎯 Goal: Build a Swift program that uses a repeat-while loop to count from 1 up to a given limit and then prints the final count.
📋 What You'll Learn
Create a variable called count starting at 1
Create a constant called limit with the value 5
Use a repeat-while loop to increase count by 1 until it is greater than limit
Print the final value of count
💡 Why This Matters
🌍 Real World
Counting steps or attempts until a goal is reached is common in games, apps, and devices.
💼 Career
Understanding loops like repeat-while helps in automating repeated tasks and controlling program flow in software development.
Progress0 / 4 steps
1
Create the initial count variable
Create a variable called count and set it to 1.
Swift
Hint

Use var to create a variable and assign it the value 1.

2
Set the limit constant
Create a constant called limit and set it to 5.
Swift
Hint

Use let to create a constant and assign it the value 5.

3
Use a repeat-while loop to count up
Write a repeat-while loop that increases count by 1 each time, and continues while count is less than or equal to limit.
Swift
Hint

Use repeat { ... } while condition syntax. Inside the loop, add 1 to count.

4
Print the final count
Write a print statement to display the value of count.
Swift
Hint

Use print(count) to show the final number.

Practice

(1/5)
1. What is the main difference between a repeat-while loop and a while loop in Swift?
easy
A. A repeat-while loop runs only once and never repeats.
B. A repeat-while loop checks the condition before running the code block.
C. A repeat-while loop cannot be used with Boolean conditions.
D. A repeat-while loop runs the code block at least once before checking the condition.

Solution

  1. Step 1: Understand loop behavior

    A while loop checks the condition before running the code block, so it may not run at all if the condition is false initially.
  2. Step 2: Compare with repeat-while

    A repeat-while loop runs the code block first, then checks the condition to decide if it should repeat, guaranteeing at least one execution.
  3. Final Answer:

    A repeat-while loop runs the code block at least once before checking the condition. -> Option D
  4. Quick Check:

    Repeat-while runs first, then checks condition [OK]
Hint: Repeat-while always runs code once before checking condition [OK]
Common Mistakes:
  • Thinking repeat-while checks condition first
  • Confusing repeat-while with while loop
  • Believing repeat-while can't repeat
2. Which of the following is the correct syntax for a repeat-while loop in Swift?
easy
A. repeat (condition) { /* code */ }
B. repeat { /* code */ } while condition
C. while condition { /* code */ } repeat
D. do { /* code */ } while condition

Solution

  1. Step 1: Recall Swift syntax for repeat-while

    The correct syntax starts with the keyword repeat, followed by a code block in braces, then the while keyword with the condition.
  2. Step 2: Check each option

    repeat { /* code */ } while condition matches the correct syntax exactly. repeat (condition) { /* code */ } incorrectly places the condition in parentheses after repeat. while condition { /* code */ } repeat mixes while and repeat incorrectly. do { /* code */ } while condition uses do-while which is not valid Swift syntax.
  3. Final Answer:

    repeat { /* code */ } while condition -> Option B
  4. Quick Check:

    repeat { } while condition syntax [OK]
Hint: Remember: repeat { } while condition is the correct form [OK]
Common Mistakes:
  • Using do-while instead of repeat-while
  • Placing condition inside parentheses after repeat
  • Mixing while and repeat keywords
3. What will be the output of the following Swift code?
var count = 3
repeat {
    print(count)
    count -= 1
} while count > 0
medium
A. 3 2 1
B. 2 1 0
C. 3 2 1 0
D. 1 2 3

Solution

  1. Step 1: Trace the loop iterations

    Initial count is 3. The loop prints count, then decreases it by 1. It repeats while count > 0.
  2. Step 2: List printed values

    First iteration: print 3, count becomes 2.
    Second iteration: print 2, count becomes 1.
    Third iteration: print 1, count becomes 0.
    Loop stops because count is not > 0.
  3. Final Answer:

    3 2 1 -> Option A
  4. Quick Check:

    Prints 3,2,1 then stops [OK]
Hint: Count down prints before condition check, stops at zero [OK]
Common Mistakes:
  • Including 0 in output
  • Printing after decrement instead of before
  • Confusing order of printed numbers
4. Identify the error in this Swift repeat-while loop code:
var x = 5
repeat {
    print(x)
    x += 1
} while x < 5
medium
A. No error; the loop runs exactly once.
B. The loop will never run because condition is false initially.
C. Syntax error: missing parentheses around condition.
D. The loop will run infinitely because x keeps increasing.

Solution

  1. Step 1: Analyze loop condition and variable change

    Initial x is 5. The loop runs once before checking condition. Inside loop, x increases by 1 each time.
  2. Step 2: Check condition after first iteration

    After first iteration, x becomes 6. Condition is x < 5, which is false, so loop should stop. But since x increases, if condition was true, it would never stop. Here, it stops after one iteration.
  3. Step 3: Re-examine the condition logic

    Actually, since x starts at 5, condition x < 5 is false, so loop runs once then stops. No infinite loop.
  4. Final Answer:

    No error; the loop runs exactly once. -> Option A
  5. Quick Check:

    Loop runs once then stops [OK]
Hint: Check variable change and condition carefully to avoid infinite loops [OK]
Common Mistakes:
  • Assuming infinite loop without checking condition
  • Thinking condition needs parentheses
  • Believing loop won't run at all
5. You want to use a repeat-while loop to ask a user for a password until they enter "swift123". Which code snippet correctly implements this?
hard
A. repeat { print("Enter password:") input = readLine() ?? "" } while input == "swift123"
B. var input = "" while input != "swift123" { print("Enter password:") input = readLine() ?? "" }
C. var input = "" repeat { print("Enter password:") input = readLine() ?? "" } while input != "swift123"
D. var input = "" repeat { input = readLine() ?? "" } while input != "swift123" print("Enter password:")

Solution

  1. Step 1: Understand the requirement

    The loop must ask for password at least once and repeat until the user enters "swift123".
  2. Step 2: Check each option

    var input = "" repeat { print("Enter password:") input = readLine() ?? "" } while input != "swift123" uses repeat-while, asks inside loop, and repeats while input is not "swift123". This matches the requirement.
    var input = "" while input != "swift123" { print("Enter password:") input = readLine() ?? "" } uses while loop, which may skip asking if input is already "swift123".
    repeat { print("Enter password:") input = readLine() ?? "" } while input == "swift123" repeats while input equals "swift123", which is opposite of requirement.
    var input = "" repeat { input = readLine() ?? "" } while input != "swift123" print("Enter password:") prints prompt after loop ends, so user is not prompted before input.
  3. Final Answer:

    var input = "" repeat { print("Enter password:") input = readLine() ?? "" } while input != "swift123" -> Option C
  4. Quick Check:

    Repeat-while asks first, repeats until correct [OK]
Hint: Use repeat-while to ask first, then check condition [OK]
Common Mistakes:
  • Using while loop that may skip first prompt
  • Reversing condition logic
  • Prompting outside the loop
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