From 463b76e6aa992c852d2565e695914cddc14b3b36 Mon Sep 17 00:00:00 2001 From: Daniel Cumbor Date: Sun, 13 Jul 2025 19:28:15 +0100 Subject: [PATCH] Reupload to new git vps. --- .gitignore | 1 + Cargo.lock | 7 +++++++ Cargo.toml | 6 ++++++ src/main.rs | 31 +++++++++++++++++++++++++++++++ 4 files changed, 45 insertions(+) create mode 100644 .gitignore create mode 100644 Cargo.lock create mode 100644 Cargo.toml create mode 100644 src/main.rs 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)); + } +}