If-Else
Fa parte della sezione Fondamenti del percorso Rust di Coddy. Lezione 25 di 75.
if ci permette di eseguire del codice specifico se una condizione è soddisfatta, ma cosa succede se vogliamo eseguire qualcos'altro se la condizione non è soddisfatta?
Per questo abbiamo l'istruzione else:
let age: i32 = 15;
let status = if age >= 18 {
"Adult"
} else {
"Young"
};Nell'esempio precedente, age è minore di 18, quindi viene eseguito il codice else e status conterrà "Young".
Possiamo renderlo ancora più approfondito usando l'istruzione else if:
let age: i32 = 68;
let status = if age < 18 {
"Young"
} else if age >= 18 && age <= 65 {
"Adult"
} else {
"Old"
};Qui verifica se age è minore di 18; in caso contrario, passerà alla condizione successiva e verificherà se age è compreso tra 18 e 65. Se anche questa condizione non è soddisfatta, imposterà status su "Old".
Possiamo aggiungere tutti gli enunciati else if che vogliamo:
if condition1 {
code;
} else if condition2 {
code;
} else if condition3 {
code;
}
...Sfida
PrincipianteTi viene fornito un codice che riceve in input un numero che indica la velocità del vento e lo memorizza in una variabile chiamata wind.
Nota: nelle prossime lezioni impareremo a ricevere input dall'utente; per ora non modificare le prime righe.
Il tuo compito è inizializzare la variabile status in base alle condizioni:
"Calm"sewindè minore di8,"Breeze"sewindè compreso tra8e31(inclusi 8 e 31)."Gale"sewindè compreso tra32e63(inclusi 32 e 63)"Storm"altrimenti
Controlla i casi di test per vedere tutti gli input e gli output previsti
Provalo tu
use std::io;
fn main() {
let mut input = String::new();
io::stdin().read_line(&mut input).unwrap();
let wind: i32 = input.trim().parse().unwrap();
// Sostituisci la riga qui sotto con un'espressione if-else che assegni status in base a wind
let status = "unset";
// Non modificare la riga qui sotto
println!("status = {}", status);
}Questa lezione include un breve quiz. Inizia la lezione per rispondere e tenere traccia dei tuoi progressi.
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