Récapitulatif - Suivi de score basique
Fait partie de la section Logique & Flux du Journey Rust de Coddy. Leçon 14 sur 66.
Défi
FacileVous recevrez deux entrées : tout d’abord, une liste de notes séparées par des virgules, puis une note à ajouter. Créez un vecteur à partir des notes initiales, ajoutez la nouvelle note, calculez la moyenne de toutes les notes et affichez les résultats.
Exigences :
- Lisez la première entrée contenant des notes séparées par des virgules (par exemple,
85,92,78) - Divisez la chaîne au niveau des virgules et supprimez les espaces superflus de chaque jeton individuel avant de le convertir en entier (par exemple, utilisez
.trim()sur chaque élément après la division) - Créez un vecteur mutable à partir de ces notes
- Lisez la deuxième entrée et convertissez-la en entier (supprimez d'abord les espaces superflus)
- Utilisez
.push()pour ajouter la nouvelle note au vecteur - Calculez la moyenne de toutes les notes du vecteur
- Affichez le nombre total de notes
- Affichez la moyenne des notes (sous forme d'entier)
Entrée :
- Première ligne : entiers séparés par des virgules représentant les notes initiales (par exemple,
85,92,78) - Deuxième ligne : un entier représentant la nouvelle note à ajouter
Sortie :
- Première ligne : le nombre total de notes
- Deuxième ligne : la moyenne des notes (sous forme d'entier, tronquée)
Remarque : Appelez toujours .trim() sur toute la ligne d'entrée et sur chaque jeton de note individuel après la division par virgule. Les chaînes d'entrée peuvent contenir des espaces invisibles ou des caractères de nouvelle ligne qui provoqueront une panique lors de l'analyse s'ils ne sont pas supprimés.
Essayez vous-même
use std::io;
fn main() {
// Lire les scores séparés par des virgules
let mut scores_input = String::new();
io::stdin().read_line(&mut scores_input).expect("Failed to read line");
// Lire le nouveau score à ajouter
let mut new_score_input = String::new();
io::stdin().read_line(&mut new_score_input).expect("Failed to read line");
// TODO: Écrivez votre code ci-dessous
// 1. Diviser scores_input par des virgules et convertir en entiers
// 2. Créer un vecteur mutable à partir de ces scores
// 3. Convertir new_score_input en un entier
// 4. Pousser le nouveau score dans le vecteur
// 5. Calculer la moyenne de tous les scores
// Afficher le nombre total de scores
// println!("{}", total_scores);
// Afficher le score moyen
// println!("{}", average);
}Toutes les leçons de Logique & Flux
1Structures de contrôle avancées
L'expression 'match'Filtrage de plusieurs valeursFiltrage d'intervallesL'expression 'if let'Les boucles en tant qu'expressionsRécapitulatif - Analyseur de commandes simple4Regrouper des données avec les structures
Qu'est-ce qu'une structure ?Aperçu des structuresAccéder aux champs d'une structureStructures mutablesLes structures comme paramètres de fonctionStructures tupleRécapitulatif - Créer une structure Book2Introduction aux vecteurs
Qu'est-ce qu'un vecteur ?Créer un vecteurAjouter des éléments avec pushAccéder aux éléments d'un vecteurItérer sur un vecteurItération mutableSupprimer des élémentsRécapitulatif - Suivi de score basique5Paires clé-valeur avec les Hash Maps
Qu'est-ce qu'une Hash Map ?Créer une Hash MapInsérer des paires clé-valeurAccéder aux valeursParcourir une Hash MapMettre à jour une valeurSupprimer une paireRécapitulatif - Compteur de mots8Projet : Inventaire d'articles simple
Configuration du projetAjouter un articleVérifier le stockVendre un articleAssembler le tout3Liste de tâches en ligne de commande
Configuration du projetAjouter une tâcheAfficher toutes les tâchesSupprimer une tâcheCode finalEntraînez-vous par vous-même : Compilateur Rust en ligne