Вычисление суммы и среднего числа в списке чисел в Rust: методы и примеры кода

Чтобы вычислить сумму и среднее числового списка в Rust, вы можете использовать различные методы. Вот несколько примеров:

Метод 1: использование цикла

fn main() {
    let numbers = vec![1, 2, 3, 4, 5];
    let mut sum = 0;
    let mut count = 0;
    for number in &numbers {
        sum += number;
        count += 1;
    }
    let average = sum as f64 / count as f64;
    println!("Sum: {}", sum);
    println!("Average: {}", average);
}

Метод 2. Использование итераторов и метода sum

fn main() {
    let numbers = vec![1, 2, 3, 4, 5];
    let sum: i32 = numbers.iter().sum();
    let average = sum as f64 / numbers.len() as f64;
    println!("Sum: {}", sum);
    println!("Average: {}", average);
}

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

fn main() {
    let numbers = vec![1, 2, 3, 4, 5];
    let (sum, count) = numbers.iter().fold((0, 0), |(sum, count), &x| (sum + x, count + 1));
    let average = sum as f64 / count as f64;
    println!("Sum: {}", sum);
    println!("Average: {}", average);
}

Метод 4. Использование методов sumи len

fn main() {
    let numbers = vec![1, 2, 3, 4, 5];
    let sum: i32 = numbers.iter().sum();
    let average = sum as f64 / numbers.len() as f64;
    println!("Sum: {}", sum);
    println!("Average: {}", average);
}