Menu
Coddy logo textTech

Zusammenfassung – Einfacher Score-Tracker

Teil des Abschnitts Logic & Flow der Rust-Journey von Coddy — Lektion 14 von 66.

challenge icon

Aufgabe

Einfach

Sie erhalten zwei Eingaben: erstens eine durch Kommas getrennte Liste von Testergebnissen und zweitens ein hinzuzufügendes Ergebnis. Erstellen Sie einen Vektor aus den ursprünglichen Ergebnissen, fügen Sie das neue Ergebnis hinzu, berechnen Sie den Durchschnitt aller Ergebnisse und geben Sie die Resultate aus.

Anforderungen:

  • Lesen Sie die erste Eingabe ein, die durch Kommas getrennte Ergebnisse enthält (z. B. 85,92,78)
  • Teilen Sie die Zeichenfolge nach Kommas auf und kürzen Sie jedes einzelne Token (trim), bevor Sie es in eine Ganzzahl umwandeln (verwenden Sie z. B. .trim() für jedes Element nach dem Aufteilen)
  • Erstellen Sie einen veränderbaren Vektor (mutable vector) aus diesen Ergebnissen
  • Lesen Sie die zweite Eingabe ein und konvertieren Sie diese in eine Ganzzahl (vorher trimmen)
  • Verwenden Sie .push(), um das neue Ergebnis zum Vektor hinzuzufügen
  • Berechnen Sie den Durchschnitt aller Ergebnisse im Vektor
  • Geben Sie die Gesamtzahl der Ergebnisse aus
  • Geben Sie den Durchschnittswert aus (als Ganzzahl)

Eingabe:

  • Erste Zeile: Durch Kommas getrennte Ganzzahlen, die die ursprünglichen Ergebnisse darstellen (z. B. 85,92,78)
  • Zweite Zeile: Eine Ganzzahl, die das neue hinzuzufügende Ergebnis darstellt

Ausgabe:

  • Erste Zeile: Die Gesamtzahl der Ergebnisse
  • Zweite Zeile: Der Durchschnittswert (als Ganzzahl, abgerundet)

Hinweis: Rufen Sie immer .trim() für die gesamte Eingabezeile und für jedes einzelne Ergebnis-Token nach dem Aufteilen durch Komma auf. Eingabezeichenfolgen können unsichtbare Leerzeichen oder Zeilenumbruchzeichen enthalten, die beim Parsen zu einem Panic führen, wenn sie nicht entfernt werden.

Probier es selbst

use std::io;

fn main() {
    // Lies die durch Kommas getrennten Punktzahlen ein
    let mut scores_input = String::new();
    io::stdin().read_line(&mut scores_input).expect("Failed to read line");
    
    // Lies die neue Punktzahl ein, die hinzugefügt werden soll
    let mut new_score_input = String::new();
    io::stdin().read_line(&mut new_score_input).expect("Failed to read line");
    
    // TODO: Schreibe deinen Code unten
    // 1. Trenne scores_input nach Kommas und konvertiere sie in Ganzzahlen
    // 2. Erstelle einen veränderbaren Vektor aus diesen Punktzahlen
    // 3. Konvertiere new_score_input in eine Ganzzahl
    // 4. Füge die neue Punktzahl dem Vektor hinzu
    // 5. Berechne den Durchschnitt aller Punktzahlen
    
    // Gib die Gesamtzahl der Punktzahlen aus
    // println!("{}", total_scores);
    
    // Gib die durchschnittliche Punktzahl aus
    // println!("{}", average);
}

Alle Lektionen in Logic & Flow