Notenrechner
Teil des Abschnitts Fundamentals der Rust-Journey von Coddy — Lektion 75 von 75.
Aufgabe
EinfachErstellen Sie eine Funktion namens calculate_average_grade, die ein Array von Ganzzahlen (die Schülerbewertungen darstellen) der Länge 8 als Eingabe entgegennimmt und die Durchschnittsnote als Zeichenfolge zurückgibt. Die Methode sollte Folgendes tun:
- Berechnen Sie die Summe aller Noten im Array.
- Berechnen Sie die Durchschnittsnote, indem Sie die Summe durch die Anzahl der Noten teilen.
- Bestimmen Sie die Note als Buchstaben basierend auf dem Durchschnitt:
- A (Sehr gut): 90-100
- B (Gut): 80-89
- C (Befriedigend): 70-79
- D (Ausreichend): 60-69
- F (Nicht bestanden): Unter 60
- Geben Sie das Ergebnis im folgenden Format aus:
Average grade: [The result] - [Letter Grade]und formatieren Sie das Ergebnis auf zwei Dezimalstellen.
Probier es selbst
use std::io;
use std::convert::TryInto;
fn calculate_average_grade(grades: [i32; 8]) -> String {
// Schreiben Sie Ihren Code unten
}
fn main() {
let mut input_str_arr = String::new();
io::stdin().read_line(&mut input_str_arr).unwrap();
let arr: [i32; 8] = input_str_arr.trim().split(',').map(|s| s.parse::<i32>().unwrap()).collect::<Vec<i32>>().try_into().unwrap();
let res = calculate_average_grade(arr);
println!("{}", res);
}Alle Lektionen in Fundamentals
4Operatoren Teil 1
Arithmetische OperatorenModulo-OperatorArithmetische AbkürzungenVergleichsoperatorenString-Vergleich7Grundlagen IO
Ausgabe in die KonsoleBenutzereingaben lesenWiederholung - Bis 120Wiederholung - Wahr oder Falsch5Operatoren Teil 2
Logische Operatoren Teil 1Logische Operatoren Teil 2Wiederholung - Einfache LogikLogische Operatoren Teil 311Funktionen
Funktionen deklarierenParameter und ArgumenteRückgabewerteMehrere RückgabewerteWiederholung - Sigma-FunktionWiederholung - Validierungsfunktion14Iterieren über Arrays
Range-LeitfadenErweiterte For-SchleifeBorrowing in SchleifenGängige Array-Operationen3Variablen Teil 2
TypdeklarationNamenskonventionenTypinferenzRückblick - Variablen initialisierenTypumwandlung6Entscheidungsfindung
If-AusdrückeIf-ElseMatch-AnweisungZusammenfassung - If-ElseVerschachteltes If-Else9Schleifen
For-Schleife über SerienWhile-SchleifeBreakContinueVerschachtelte SchleifenSchleifen-LabelsEndlosschleifeRückblick – Dynamische Eingabe