Bird
Raised Fist0
Rustprogramming~10 mins

Loop execution flow in Rust - Step-by-Step Execution

Choose your learning style10 modes available
Concept Flow - Loop execution flow
Initialize counter i=0
↓
Check condition i < 3?
No→EXIT LOOP
Yes↓
Execute loop body
↓
Update counter i = i + 1
↩Back to condition check
The loop starts by setting a counter, checks if it meets the condition, runs the loop body if yes, updates the counter, and repeats until the condition is false.
Execution Sample
Rust
fn main() {
    let mut i = 0;
    while i < 3 {
        println!("i = {}", i);
        i += 1;
    }
}
This Rust code runs a loop printing the value of i from 0 to 2.
Execution Table
Stepi valueCondition i < 3?ActionOutput
10truePrint i, i = 0; i = i + 1i = 0
21truePrint i, i = 1; i = i + 1i = 1
32truePrint i, i = 2; i = i + 1i = 2
43falseExit loop
💡 i reaches 3, condition i < 3 is false, loop stops
Variable Tracker
VariableStartAfter 1After 2After 3Final
i01233
Key Moments - 2 Insights
Why does the loop stop when i equals 3?
Because the condition i < 3 becomes false at step 4 in the execution_table, so the loop exits.
When is the value of i increased during the loop?
After printing i in each iteration, i is increased by 1 as shown in the Action column of steps 1 to 3.
Visual Quiz - 3 Questions
Test your understanding
Look at the execution_table, what is the value of i at step 2?
A2
B0
C1
D3
💡 Hint
Check the 'i value' column at step 2 in the execution_table.
At which step does the loop condition become false?
AStep 4
BStep 3
CStep 1
DStep 2
💡 Hint
Look at the 'Condition i < 3?' column in the execution_table.
If we change the condition to i < 2, how many times will the loop run?
A3 times
B2 times
C1 time
D0 times
💡 Hint
Refer to the variable_tracker and how the condition controls loop iterations.
Concept Snapshot
Rust loop execution flow:
- Initialize counter before loop
- Check condition before each iteration
- Run loop body if condition true
- Update counter inside loop
- Repeat until condition false
- Loop exits cleanly
Full Transcript
This example shows a Rust while loop starting with i = 0. Each step checks if i is less than 3. If yes, it prints i and increases i by 1. When i reaches 3, the condition fails and the loop stops. The variable i changes from 0 to 3 over the loop. Key points are when the condition is checked and when i is updated. The loop runs exactly 3 times, printing i values 0, 1, and 2.

Practice

(1/5)
1. What does the break statement do inside a Rust loop?
easy
A. It restarts the loop from the beginning.
B. It skips the current iteration and continues with the next one.
C. It pauses the loop until a condition is met.
D. It stops the loop immediately and exits it.

Solution

  1. Step 1: Understand the role of break in loops

    The break statement immediately stops the loop and exits it.
  2. Step 2: Compare with other loop controls

    continue skips to the next iteration, but break ends the loop entirely.
  3. Final Answer:

    It stops the loop immediately and exits it. -> Option D
  4. Quick Check:

    break stops loop = C [OK]
Hint: Remember: break = stop loop, continue = skip iteration [OK]
Common Mistakes:
  • Confusing break with continue
  • Thinking break pauses instead of stops
  • Assuming break restarts the loop
2. Which of the following is the correct syntax to skip the current iteration in a Rust for loop?
easy
A. skip;
B. continue;
C. break;
D. next;

Solution

  1. Step 1: Identify the keyword to skip iteration

    In Rust, continue; skips the rest of the current loop iteration and moves to the next.
  2. Step 2: Check other options for correctness

    break; stops the loop, skip; and next; are not valid Rust keywords for this purpose.
  3. Final Answer:

    continue; -> Option B
  4. Quick Check:

    Skip iteration = continue [OK]
Hint: Use continue to skip current loop iteration [OK]
Common Mistakes:
  • Using break instead of continue
  • Using non-existent keywords like skip or next
  • Omitting the semicolon
3. What will be the output of this Rust code?
let mut count = 0;
loop {
    count += 1;
    if count == 3 {
        break;
    }
    println!("{}", count);
}
medium
A. 1 2 3
B. 0 1 2
C. 1 2
D. 3

Solution

  1. Step 1: Trace the loop iterations and print statements

    Loop increments count from 0 to 1, prints 1; then 2, prints 2; when count is 3, break stops loop before printing.
  2. Step 2: Determine printed values

    Only 1 and 2 are printed before break stops the loop.
  3. Final Answer:

    1 2 -> Option C
  4. Quick Check:

    Prints before break = 1 2 [OK]
Hint: Break stops before printing count 3 [OK]
Common Mistakes:
  • Assuming count 3 is printed
  • Starting count from 1 instead of 0
  • Confusing break and continue effects
4. Identify the error in this Rust loop code:
for i in 1..5 {
    if i == 3 {
        continue
    }
    println!("{}", i);
}
medium
A. Missing semicolon after continue
B. Incorrect range syntax
C. println! macro is used incorrectly
D. continue cannot be used inside for loops

Solution

  1. Step 1: Check syntax of continue statement

    In Rust, statements like continue require a semicolon to end the statement.
  2. Step 2: Verify other parts of the code

    The range 1..5 and println! usage are correct; continue is valid inside for loops.
  3. Final Answer:

    Missing semicolon after continue -> Option A
  4. Quick Check:

    Statements need semicolon = A [OK]
Hint: Add semicolon after continue to fix syntax [OK]
Common Mistakes:
  • Forgetting semicolon after continue
  • Thinking continue is invalid in for loops
  • Misreading range syntax
5. Given this Rust code, what will be the final value of sum?
let mut sum = 0;
for i in 1..6 {
    if i % 2 == 0 {
        continue;
    }
    if i == 5 {
        break;
    }
    sum += i;
}
hard
A. 4
B. 5
C. 6
D. 9

Solution

  1. Step 1: Analyze loop iterations and conditions

    Loop runs i from 1 to 5 (exclusive 6). For even i, continue skips adding. For i == 5, break stops loop before adding.
  2. Step 2: Calculate sum for valid i values

    i=1 (odd, add 1), i=2 (even, skip), i=3 (odd, add 3), i=4 (even, skip), i=5 (break before add). sum = 1 + 3 = 4.
  3. Final Answer:

    4 -> Option A
  4. Quick Check:

    Sum odd before 5 = 4 [OK]
Hint: Add only odd numbers before 5, skip evens [OK]
Common Mistakes:
  • Adding even numbers mistakenly
  • Including 5 in sum despite break
  • Confusing continue and break effects
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