Zusammenfassung – Einfacher Score-Tracker
Teil des Abschnitts Logik & Kontrollfluss der Rust-Journey von Coddy. Lektion 14 von 66.
Aufgabe
EinfachDu erhältst zwei Eingaben: zunächst eine durch Kommas getrennte Liste von Punktzahlen und anschließend eine hinzuzufügende Punktzahl. Erstelle aus den ursprünglichen Punktzahlen einen Vektor, füge die neue Punktzahl hinzu, berechne den Durchschnitt aller Punktzahlen und gib die Ergebnisse aus.
Anforderungen:
- Lies die erste Eingabe mit durch Kommas getrennten Punktzahlen ein (z. B.
85,92,78) - Teile die Zeichenkette an den Kommas auf und entferne die Leerzeichen von jedem einzelnen Token, bevor du es in eine Ganzzahl umwandelst (verwende z. B.
.trim()für jedes Element nach dem Aufteilen) - Erstelle aus diesen Punktzahlen einen veränderbaren Vektor
- Lies die zweite Eingabe ein und wandle sie in eine Ganzzahl um (entferne vorher die Leerzeichen)
- Verwende
.push(), um die neue Punktzahl zum Vektor hinzuzufügen - Berechne den Durchschnitt aller Punktzahlen im Vektor
- Gib die Gesamtzahl der Punktzahlen aus
- Gib die durchschnittliche Punktzahl aus (als Ganzzahl)
Eingabe:
- Erste Zeile: Durch Kommas getrennte Ganzzahlen, die die ursprünglichen Punktzahlen darstellen (z. B.
85,92,78) - Zweite Zeile: Eine Ganzzahl, die die hinzuzufügende neue Punktzahl darstellt
Ausgabe:
- Erste Zeile: Die Gesamtzahl der Punktzahlen
- Zweite Zeile: Die durchschnittliche Punktzahl (als Ganzzahl, abgeschnitten)
Hinweis: Rufe .trim() immer für die gesamte Eingabezeile und für jedes einzelne Punktzahl-Token nach dem Aufteilen am Komma auf. Eingabezeichenketten können unsichtbare Leerzeichen oder Zeilenumbruchzeichen enthalten, die beim Parsen einen Panic verursachen, wenn sie nicht entfernt werden.
Probier es selbst
use std::io;
fn main() {
// Lese die kommagetrennten Punktzahlen
let mut scores_input = String::new();
io::stdin().read_line(&mut scores_input).expect("Failed to read line");
// Lese die neue hinzuzufügende Punktzahl
let mut new_score_input = String::new();
io::stdin().read_line(&mut new_score_input).expect("Failed to read line");
// TODO: Schreibe deinen Code darunter
// 1. Teile scores_input an Kommas und konvertiere zu Ganzzahlen
// 2. Erstelle einen veränderbaren Vektor aus diesen Punktzahlen
// 3. Konvertiere new_score_input zu einer Ganzzahl
// 4. Füge die neue Punktzahl dem Vektor hinzu
// 5. Berechne den Durchschnitt aller Punktzahlen
// Gib die Gesamtanzahl der Punktzahlen aus
// println!("{}", total_scores);
// Gib die durchschnittliche Punktzahl aus
// println!("{}", average);
}Alle Lektionen in Logik & Kontrollfluss
1Fortgeschrittener Kontrollfluss
Der 'match'-AusdruckAbgleichen mehrerer WerteBereiche abgleichenDer 'if let'-AusdruckSchleifen als AusdrückeRückblick – Einfacher Befehls-Parser4Daten gruppieren mit Structs
Was ist ein Struct?Übersicht über StructsZugriff auf Struct-FelderVeränderbare StructsStructs als FunktionsparameterTupel-StructsZusammenfassung – Ein Buch-Struct erstellen2Einführung in Vektoren
Was ist ein Vektor?Einen Vektor erstellenElemente mit push hinzufügenZugriff auf Vektor-ElementeÜber einen Vektor iterierenVeränderliche IterationElemente entfernenZusammenfassung – Einfacher Score-Tracker5Schlüssel-Wert-Paare mit Hash Maps
Was ist eine Hash Map?Erstellen einer Hash MapEinfügen von Schlüssel-Wert-PaarenZugreifen auf WerteIterieren über eine Hash MapAktualisieren eines WertesEntfernen eines PaaresZusammenfassung – Wortzähler8Projekt: Einfaches Artikelinventar
Projekt-SetupEinen Artikel hinzufügenLagerbestand prüfenEinen Artikel verkaufenAlles zusammenfügen11Abschluss-Herausforderungen
Wiederholung - Einzigartige ElementeWiederholung - Benutzerprofil-ValidatorWiederholung - Noten-Zusammenfassung3Kommandozeilen-To-Do-Liste
Projekt-SetupEine Aufgabe hinzufügenAlle Aufgaben anzeigenEine Aufgabe entfernenFinaler CodeÜbe selbstständig: Online-Rust-Compiler