Bird
Raised Fist0
Swiftprogramming~15 mins

While loop in Swift - Mini Project: Build & Apply

Choose your learning style10 modes available
Counting Down with a While Loop
📖 Scenario: Imagine you have a rocket that needs to count down before launch. You want to create a simple program that counts down from a number to zero.
🎯 Goal: Build a Swift program that uses a while loop to count down from 5 to 0 and print each number.
📋 What You'll Learn
Create a variable called count with the value 5
Create a variable called zero with the value 0
Use a while loop that runs as long as count is greater than or equal to zero
Inside the loop, print the current value of count
Inside the loop, decrease count by 1 each time
💡 Why This Matters
🌍 Real World
Counting down is used in many real-world situations like rocket launches, game timers, or cooking timers.
💼 Career
Understanding loops is essential for programming tasks that require repetition, such as processing data, animations, or user interactions.
Progress0 / 4 steps
1
Create the starting number
Create a variable called count and set it to 5.
Swift
Hint

Use var to create a variable and assign the number 5 to count.

2
Create the zero value
Create a variable called zero and set it to 0.
Swift
Hint

This variable will be used to compare in the loop condition.

3
Write the while loop
Write a while loop that runs as long as count is greater than or equal to zero. Inside the loop, print count and then subtract 1 from count.
Swift
Hint

Use while count >= zero { ... } and inside the braces print and decrease count.

4
Run and see the countdown
Run the program to print the countdown from 5 to 0.
Swift
Hint

The program should print numbers from 5 down to 0, each on its own line.

Practice

(1/5)
1. What does a while loop do in Swift?
easy
A. Repeats code while a condition is true
B. Runs code only once
C. Runs code a fixed number of times
D. Stops the program immediately

Solution

  1. Step 1: Understand the purpose of a while loop

    A while loop runs repeatedly as long as its condition stays true.
  2. Step 2: Compare options with the definition

    Only Repeats code while a condition is true correctly describes repeating code while a condition is true.
  3. Final Answer:

    Repeats code while a condition is true -> Option A
  4. Quick Check:

    While loop = repeat while true condition [OK]
Hint: While loops run as long as condition is true [OK]
Common Mistakes:
  • Thinking while loops run a fixed number of times
  • Confusing while with if statements
  • Assuming while loops run only once
2. Which of the following is the correct syntax for a while loop in Swift?
easy
A. while condition: { /* code */ }
B. while (condition) do { /* code */ }
C. while { condition } /* code */
D. while condition { /* code */ }

Solution

  1. Step 1: Recall Swift while loop syntax

    Swift uses: while condition { code } without parentheses or extra keywords.
  2. Step 2: Check each option

    while condition { /* code */ } matches Swift syntax exactly; others have extra keywords or wrong punctuation.
  3. Final Answer:

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

    Swift while syntax = while condition { } [OK]
Hint: Swift while loops use no parentheses around condition [OK]
Common Mistakes:
  • Adding parentheses around the condition
  • Using 'do' keyword incorrectly
  • Using colon instead of braces
3. What will be the output of this Swift code?
var count = 3
while count > 0 {
    print(count)
    count -= 1
}
medium
A. 1 2 3
B. 3 2 1
C. 3 2 1 0
D. 0 1 2 3

Solution

  1. Step 1: Analyze the loop condition and variable

    Variable count starts at 3 and loop runs while count > 0.
  2. Step 2: Trace each iteration

    Prints 3, then count becomes 2; prints 2, count 1; prints 1, count 0; loop stops.
  3. Final Answer:

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

    Loop prints count down from 3 to 1 [OK]
Hint: Count down from 3 to 1, stops before 0 [OK]
Common Mistakes:
  • Including 0 in output
  • Printing in ascending order
  • Not decreasing count inside loop
4. Identify the error in this Swift code:
var i = 1
while i < 5 {
    print(i)
}
medium
A. Variable i should be a constant
B. Incorrect while syntax
C. Missing increment of i inside the loop
D. print statement is invalid

Solution

  1. Step 1: Check loop structure and variable changes

    The loop condition depends on i, but i never changes inside the loop.
  2. Step 2: Understand effect of missing increment

    Without increasing i, the condition i < 5 stays true forever, causing an infinite loop.
  3. Final Answer:

    Missing increment of i inside the loop -> Option C
  4. Quick Check:

    Loop variable must change to avoid infinite loop [OK]
Hint: Always update loop variable inside while loop [OK]
Common Mistakes:
  • Forgetting to increment or change loop variable
  • Thinking print causes error
  • Assuming syntax is wrong
5. How can you use a while loop to sum all even numbers from 2 to 10 inclusive in Swift?
hard
A. Use a variable starting at 2, add it to sum, increment by 2 until 10
B. Start at 1, add all numbers, then multiply by 2
C. Use a while loop with condition i <= 10, increment i by 2, add i
D. Use a while loop starting at 10, increment 2 each time, add to sum

Solution

  1. Step 1: Plan loop to add even numbers from 2 to 10

    Start with i = 2, add i to sum, then increase i by 2 to get next even number.
  2. Step 2: Check options for correct approach

    Use a variable starting at 2, add it to sum, increment by 2 until 10 correctly describes starting at 2, adding to sum, incrementing by 2 until 10.
  3. Final Answer:

    Use a variable starting at 2, add it to sum, increment by 2 until 10 -> Option A
  4. Quick Check:

    Sum evens by stepping 2 from 2 to 10 [OK]
Hint: Increment by 2 to sum even numbers quickly [OK]
Common Mistakes:
  • Incrementing by 2 without starting at 2
  • Starting from 10 and incrementing
  • Multiplying sum incorrectly
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