Menu
Coddy logo textTech

Opérations courantes sur les tableaux

Fait partie de la section Fundamentals du Journey Rust de Coddy — leçon 68 sur 75.

Voici quelques opérations courantes sur les tableaux :

  • Trouvez la somme de tous les éléments d'un tableau :
let numbers = [1, 2, 3, 4, 5];
let mut sum = 0;
for number in &numbers {
    sum += number;
}
println!("Sum: {}", sum);
  • Trouver la moyenne des éléments d'un tableau :
let numbers = [1, 2, 3, 4, 5];
let mut sum = 0;
for number in &numbers {
    sum += number;
}
let average = sum as f64 / numbers.len() as f64;
println!("Average: {}", average);
  • Trouver l'élément maximum dans un tableau :
let numbers = [1, 5, 2, 9, 3];
let mut max = numbers[0];
for &number in &numbers[1..] {
    if number > max {
        max = number;
    }
}
println!("Max: {}", max);
  • Trouver l'élément minimum dans un tableau :
let numbers = [1, 5, 2, 9, 3];
let mut min = numbers[0];
for &number in &numbers[1..] {
    if number < min {
        min = number;
    }
}
println!("Min: {}", min);
challenge icon

Défi

Facile

Créez une fonction nommée calculate_stats qui prend en entrée un tableau d'entiers de longueur 8 et effectue les opérations suivantes :

  1. Calcule la Sum de tous les éléments du tableau.
  2. Calcule la Average des éléments du tableau.
  3. Trouve le Maximum élément du tableau.
  4. Trouve le Minimum élément du tableau.

La fonction doit retourner un tableau de doubles contenant la Sum, la Average, le Maximum et le Minimum, dans cet ordre.

Aide-mémoire

Opérations courantes sur les tableaux en Rust :

Somme de tous les éléments :

let numbers = [1, 2, 3, 4, 5];
let mut sum = 0;
for number in &numbers {
    sum += number;
}

Moyenne des éléments :

let numbers = [1, 2, 3, 4, 5];
let mut sum = 0;
for number in &numbers {
    sum += number;
}
let average = sum as f64 / numbers.len() as f64;

Élément maximum :

let numbers = [1, 5, 2, 9, 3];
let mut max = numbers[0];
for &number in &numbers[1..] {
    if number > max {
        max = number;
    }
}

Élément minimum :

let numbers = [1, 5, 2, 9, 3];
let mut min = numbers[0];
for &number in &numbers[1..] {
    if number < min {
        min = number;
    }
}

Essayez vous-même

use std::io;
use std::convert::TryInto;

fn calculate_stats(arr: [i32; 8]) -> [f64; 4] {
    // Écrivez votre code ici
    
    
}

fn main() {
    let mut input_str_arr = String::new();
    io::stdin().read_line(&mut input_str_arr).unwrap();
    let numbers: [i32; 8] = input_str_arr.split(',').map(|s| s.parse::<i32>().unwrap()).collect::<Vec<i32>>().try_into().unwrap();
    let stats = calculate_stats(numbers);
    println!("Sum: {}", stats[0]);
    println!("Average: {}", stats[1]);
    println!("Maximum: {}", stats[2]);
    println!("Minimum: {}", stats[3]);
}
quiz iconTestez-vous

Cette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.

Toutes les leçons de Fundamentals