From 869e68986aa8f69af6e7842260a68d1e5c6f796f Mon Sep 17 00:00:00 2001 From: Carlos Maiolino Date: Thu, 10 Jul 2025 22:24:20 +0200 Subject: Add a bunch of code Signed-off-by: Carlos Maiolino --- rust/loops/src/main.rs | 62 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 62 insertions(+) create mode 100644 rust/loops/src/main.rs (limited to 'rust/loops/src/main.rs') diff --git a/rust/loops/src/main.rs b/rust/loops/src/main.rs new file mode 100644 index 0000000..2458311 --- /dev/null +++ b/rust/loops/src/main.rs @@ -0,0 +1,62 @@ +fn main() { + let mut counter = 0; + + let result = loop { + counter += 1; + + if counter == 10 { + // loop {} is an expression and can return values, this is sick. + break counter * 2; + } + }; + + println!("The result is {result}"); + + let mut count = 0; + 'counting_up: loop { // Loop label 'counting_up + println!("count = {count}"); + let mut remaining = 10; + + loop { + println!("remaining = {remaining}"); + if remaining == 9 { + break; + } + + if count == 2 { + break 'counting_up; // Break the outter loop + } + remaining -= 1; + } + + count += 1; + } + println!("End count = {count}"); + + let mut number = 3; + + while number != 0 { + println!("Number: {number}"); + number -= 1; + } + println!("While is gone"); + + let a = [10, 20, 30, 40, 50]; + let mut index = 0; + + while index < 5 { + println!("{}", a[index]); + index += 1; + } + + // Using a for loop + for element in a { + println!("the value is: {element}"); + } + + // Range - .rev == reverse + for number in (1..4).rev() { + println!("{number}"); + } + +} -- cgit v1.2.3