๐ Scenario: You are helping a small shop owner count the total number of items sold in a day. The shop owner has a list of daily sales numbers for each hour.
๐ฏ Goal: Build a Rust program that uses a loop construct to sum all the sales numbers and print the total.
๐ What You'll Learn
Create a vector called sales with the exact values: 5, 8, 12, 3, 7
Create a variable called total and set it to 0
Use a loop construct with an index variable i to iterate over sales
Add each sale to total inside the loop
Break the loop when all sales are added
Print the final total value
๐ก Why This Matters
๐ Real World
Counting totals from lists of numbers is common in sales, inventory, and data analysis.
๐ผ Career
Understanding loops and data structures like vectors is essential for software development and data processing jobs.
Progress0 / 4 steps
1
Create the sales data
Create a vector called sales with the exact values 5, 8, 12, 3, 7.
Rust
Hint
Use let sales = vec![5, 8, 12, 3, 7]; to create the vector.
2
Initialize the total counter
Create a variable called total and set it to 0 inside the main function, below the sales vector.
Rust
Hint
Use let mut total = 0; to create a variable that can change.
3
Use a loop to sum sales
Use a loop construct with an index variable i starting at 0 to iterate over the sales vector. Inside the loop, add sales[i] to total. Break the loop when i reaches the length of sales.
Rust
Hint
Start with let mut i = 0;. Use loop { ... }. Inside, check if i == sales.len() to break. Add sales[i] to total and increase i by 1.
4
Print the total sales
Add a println! statement to print the total variable after the loop ends.
Rust
Hint
Use println!("Total sales: {}", total); to show the result.
Practice
(1/5)
1. What does the loop keyword do in Rust?
easy
A. It runs the loop a fixed number of times.
B. It creates an infinite loop that runs until break is called.
C. It runs the loop only once.
D. It creates a loop that runs only if a condition is true.
Solution
Step 1: Understand the loop keyword
The loop keyword in Rust creates a loop that repeats forever unless stopped.
Step 2: Identify how to stop the loop
To stop a loop, you must use break inside it; otherwise, it runs infinitely.
Final Answer:
It creates an infinite loop that runs until break is called. -> Option B
2. Which of the following is the correct syntax to create an infinite loop in Rust?
easy
A. loop { println!("Hello"); }
B. while True { println!("Hello"); }
C. for i in 0.. { println!("Hello"); }
D. repeat { println!("Hello"); }
Solution
Step 1: Check Rust syntax for infinite loops
Rust uses the keyword loop to create an infinite loop.
Step 2: Verify each option
while True { println!("Hello"); } uses while True which is invalid syntax in Rust. for i in 0.. { println!("Hello"); } uses for with an infinite range, but 0.. is not valid without an end. repeat { println!("Hello"); } uses repeat which does not exist in Rust. loop { println!("Hello"); } correctly uses loop.
Final Answer:
loop { println!("Hello"); } -> Option A
Quick Check:
Correct infinite loop syntax = loop [OK]
Hint: Use loop keyword for infinite loops in Rust [OK]
Common Mistakes:
Using while True which is invalid in Rust
Trying to use repeat which doesn't exist
Using for without a proper range
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
B. 0 1 2
C. 1 2 3
D. No output (infinite loop)
Solution
Step 1: Trace the loop iterations
Initially, count = 0. In the first loop, count becomes 1, which is printed. Then count becomes 2 and printed. When count becomes 3, the loop breaks before printing.
Step 2: List printed values
Only 1 and 2 are printed before the break stops the loop.
Final Answer:
1 2 -> Option A
Quick Check:
Loop prints until count == 3, so prints 1 and 2 [OK]
Hint: Check when break happens before printing [OK]
Common Mistakes:
Printing count after break condition
Starting count from 0 but expecting 0 to print
Assuming infinite loop without break
4. Identify the error in this Rust loop code:
let mut i = 0;
loop {
if i == 5 {
break;
}
println!("{}", i);
}
medium
A. 'println!' macro syntax is wrong.
B. Missing semicolon after 'break'.
C. 'loop' keyword is used incorrectly.
D. Variable 'i' is not incremented, causing an infinite loop.
Solution
Step 1: Check loop control variable
The variable i is initialized but never changed inside the loop.
Step 2: Understand loop behavior
Since i never increments, i == 5 is never true, so break is never reached, causing an infinite loop.
Final Answer:
Variable 'i' is not incremented, causing an infinite loop. -> Option D
Quick Check:
Loop needs variable increment to reach break [OK]
Hint: Always update loop variables to avoid infinite loops [OK]
Common Mistakes:
Forgetting to increment loop variable
Assuming break works without condition change
Misunderstanding loop syntax
5. How can you use a loop to sum numbers from 1 to 5 in Rust?
hard
A. Use loop with a counter but never update sum.
B. Use loop without break and add numbers forever.
C. Use a loop with a counter and break when counter > 5, adding each to sum.
D. Use loop with a counter but break immediately without adding.
Solution
Step 1: Plan the loop with counter and sum
Initialize a counter at 1 and sum at 0. Use loop to add counter to sum.
Step 2: Use break to stop after 5
Increment counter each loop. When counter > 5, use break to exit loop.
Step 3: Result is sum of 1 to 5
This method correctly sums numbers 1+2+3+4+5 = 15.
Final Answer:
Use a loop with a counter and break when counter > 5, adding each to sum. -> Option C
Quick Check:
Loop + counter + break = sum 1 to 5 [OK]
Hint: Increment counter and break after limit to sum [OK]
Common Mistakes:
Not breaking loop causing infinite sum
Not incrementing counter
Not adding counter to sum
Recommended
Ready to prove it?
Pass the test and this pattern moves unknownstrongwhile earning +1 Grip toward your certificate.