3 различных метода реализации FizzBuzz в Rust с примерами кода

Rust fizzbuzz — это классическое упражнение по программированию под названием FizzBuzz, которое часто используется для оценки базовых навыков программиста. В FizzBuzz вы пишете программу, которая печатает числа от 1 до заданного числа, но для кратных трем вместо числа печатает «Fizz», а для кратных пяти — «Buzz». Для чисел, кратных трем и пяти, печатается «FizzBuzz».

Вот несколько различных способов реализации FizzBuzz в Rust, а также примеры кода:

Метод 1: использование базового цикла и операторов if-else

fn fizzbuzz(n: u32) {
    for i in 1..=n {
        if i % 3 == 0 && i % 5 == 0 {
            println!("FizzBuzz");
        } else if i % 3 == 0 {
            println!("Fizz");
        } else if i % 5 == 0 {
            println!("Buzz");
        } else {
            println!("{}", i);
        }
    }
}
fn main() {
    fizzbuzz(15);
}

Метод 2: использование выражения соответствия

fn fizzbuzz(n: u32) {
    for i in 1..=n {
        match (i % 3, i % 5) {
            (0, 0) => println!("FizzBuzz"),
            (0, _) => println!("Fizz"),
            (_, 0) => println!("Buzz"),
            _ => println!("{}", i),
        }
    }
}
fn main() {
    fizzbuzz(15);
}

Метод 3. Использование итераторов и карты

fn fizzbuzz(n: u32) {
    (1..=n).map(|i| {
        match (i % 3, i % 5) {
            (0, 0) => "FizzBuzz".to_string(),
            (0, _) => "Fizz".to_string(),
            (_, 0) => "Buzz".to_string(),
            _ => i.to_string(),
        }
    }).for_each(|output| println!("{}", output));
}
fn main() {
    fizzbuzz(15);
}

Это всего лишь несколько примеров того, как можно реализовать FizzBuzz в Rust. Вы можете использовать любой из этих методов в зависимости от ваших предпочтений и требований.