Calcolatore dei voti degli studenti
Fa parte della sezione Fondamenti del percorso Rust di Coddy. Lezione 75 di 75.
Sfida
FacileCrea una funzione denominata calculate_average_grade che accetta in input un array di interi (che rappresentano i voti degli studenti) di lunghezza 8 e restituisce il voto medio come stringa. Il metodo deve fare quanto segue:
- Calcolare la somma di tutti i voti nell'array.
- Calcolare il voto medio dividendo la somma per il numero di voti.
- Determinare il voto in lettere in base alla media:
- A (Eccellente): 90-100
- B (Buono): 80-89
- C (Soddisfacente): 70-79
- D (Da migliorare): 60-69
- F (Insufficiente): sotto 60
- Stampare il risultato usando il seguente formato:
Average grade: [The result] - [Letter Grade]e formattare il risultato con due cifre decimali.
Provalo tu
use std::io;
use std::convert::TryInto;
fn calculate_average_grade(grades: [i32; 8]) -> String {
// Scrivi il tuo codice qui sotto
}
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);
}Tutte le lezioni di Fondamenti
4Operatori Parte 1
Operatori aritmeticiOperatore moduloAbbreviazioni aritmeticheOperatori di confrontoConfronto tra stringhe7Input/output di base
Stampare sulla consoleLeggere l'input dell'utenteRiepilogo - Fino a 120Riepilogo - Vero o falso5Operatori Parte 2
Operatori logici Parte 1Operatori logici Parte 2Ripasso - Logica sempliceOperatori logici Parte 311Funzioni
Dichiarare le funzioniParametri e argomentiValori restituitiValori restituiti multipliRiepilogo - funzione SigmaRiepilogo - funzione di validazione14Iterare sugli array
Guida ai rangeCiclo for avanzatoPrestito nel cicloOperazioni comuni sugli array3Variabili Parte 2
Dichiarazione del tipoConvenzioni di denominazioneInferenza del tipoRipasso - Inizializzare le variabiliConversione di tipo9Cicli
Ciclo for su sequenzeCiclo whileBreakContinueCiclo annidatoEtichette dei cicliCiclo infinitoRiepilogo - Input dinamico12Fondamenti degli array
Dichiarare gli arrayArray come parametroAccedere agli elementiModificare gli arrayRiepilogo - Stampare un array in modo leggibile15Operazioni sulle stringhe
Metodi delle stringheMacro format!Conversione delle stringheRipasso - FormattazioneEsercitati da solo: Compilatore Rust online