commit 463b76e6aa992c852d2565e695914cddc14b3b36 Author: Daniel Cumbor Date: Sun Jul 13 19:28:15 2025 +0100 Reupload to new git vps. diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..ea8c4bf --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +/target diff --git a/Cargo.lock b/Cargo.lock new file mode 100644 index 0000000..176dcaf --- /dev/null +++ b/Cargo.lock @@ -0,0 +1,7 @@ +# This file is automatically @generated by Cargo. +# It is not intended for manual editing. +version = 4 + +[[package]] +name = "FizzBuzz" +version = "0.1.0" diff --git a/Cargo.toml b/Cargo.toml new file mode 100644 index 0000000..7399f37 --- /dev/null +++ b/Cargo.toml @@ -0,0 +1,6 @@ +[package] +name = "FizzBuzz" +version = "0.1.0" +edition = "2024" + +[dependencies] diff --git a/src/main.rs b/src/main.rs new file mode 100644 index 0000000..0c8b118 --- /dev/null +++ b/src/main.rs @@ -0,0 +1,31 @@ +use std::collections::BTreeMap; + +fn fizz_buzz(current_number: u32) -> String { + let mut rules = BTreeMap::new(); + rules.insert(3, "Fizz"); + rules.insert(5, "Buzz"); + // Add more rules here! + + let result: String = rules + .iter() + .filter_map(|(&divisor, &word)| { + if current_number % divisor == 0 { + Some(word) + } else { + None + } + }) + .collect(); + + if result.is_empty() { + current_number.to_string() + } else { + result + } +} + +fn main() { + for i in 1..=100 { + println!("{}", fizz_buzz(i)); + } +}