For Over Series
Part of the Fundamentals section of Coddy's Rust journey — lesson 37 of 75.
Sometimes when programming it's necessary to perform same or almost the same operation a couple of times.
To prevent writing the same thing over and over again we can use Loops.
The for loop has the following syntax
for element in range {
code
}A range expression defines how many times the loop should run, typically written as start..end (which runs from start to end-1) or start..=end (which runs from start to end, including end).
For example, a loop from 0 to 5 (not including):
for i in 0..5 {
println!("{}", i);
}It will execute the print statement 5 times:
0
1
2
3
4Loops have many use cases. For example, let's sum all the numbers from 1 to 100:
let mut sum_numbers = 0;
for i in 1..=100 {
sum_numbers += i;
}
println!("{}", sum_numbers);This will first loop through all numbers between 1 to 100 (including 100 because of ..= sign) and sum all of them, then it will print the sum_numbers variable
If for some reason you want to create a loop without using a variable (i), you should add underscore at the start of the name: _i. This will tell the compiler that it is okay that it is not used, and it will prevent the program to produce a warning:
for _i in 0..5 {
println!("Hello!");
}Challenge
BeginnerWrite a program that prints "Hello Coddy: " and the i value from 3 to 27 (including, which means printing the numbers 3, 4, 5, ..., 26, 27, making it 27 - 3 + 1 = 25 times in total), do it using a for loop.
It will look like this:
Hello Coddy: 3
Hello Coddy: 4
...
Hello Coddy: 27Cheat sheet
The for loop allows you to repeat code multiple times:
for element in range {
code
}Range expressions define how many times the loop runs:
start..end- runs from start to end-1 (excluding end)start..=end- runs from start to end (including end)
Example loop from 0 to 4:
for i in 0..5 {
println!("{}", i);
}Example summing numbers from 1 to 100:
let mut sum_numbers = 0;
for i in 1..=100 {
sum_numbers += i;
}
println!("{}", sum_numbers);If you don't use the loop variable, prefix it with underscore to avoid warnings:
for _i in 0..5 {
println!("Hello!");
}Try it yourself
fn main() {
// Write code here
}This lesson includes a short quiz. Start the lesson to answer it and track your progress.
All lessons in Fundamentals
4Operators Part 1
Arithmetic OperatorsModulo OperatorArithmetic ShortcutsComparison OperatorsString Comparison5Operators Part 2
Logical Operators Part 1Logical Operators Part 2Recap - Simple LogicLogical Operators Part 33Variables Part 2
Type DeclarationNaming ConventionsType InferenceRecap - Initialize VariablesType Casting9Loops
For Over SeriesWhile LoopBreakContinueNested LoopLoop LabelsInfinite LoopRecap - Dynamic Input