Ciclo for su sequenze
Fa parte della sezione Fondamenti del percorso Rust di Coddy. Lezione 37 di 75.
A volte, quando si programma, è necessario eseguire la stessa operazione o quasi un paio di volte.
Per evitare di scrivere la stessa cosa più e più volte, possiamo usare i cicli.
Il ciclo for ha la seguente sintassi
for element in range {
code
}Un'espressione range definisce quante volte deve essere eseguito il ciclo, solitamente scritta come start..end (che va da start a end-1) oppure start..=end (che va da start a end, includendo end).
Per esempio, un ciclo da 0 a 5 (escluso):
for i in 0..5 {
println!("{}", i);
}Eseguirà l'istruzione print 5 volte:
0
1
2
3
4I cicli hanno molti casi d’uso. Per esempio, sommiamo tutti i numeri da 1 a 100:
let mut sum_numbers = 0;
for i in 1..=100 {
sum_numbers += i;
}
println!("{}", sum_numbers);Prima eseguirà un ciclo su tutti i numeri da 1 a 100 (includendo 100 grazie al segno ..=) e li sommerà tutti, poi stamperà la variabile sum_numbers
Se per qualche motivo vuoi creare un ciclo senza usare una variabile (i), dovresti aggiungere un trattino basso all’inizio del nome: _i. Questo comunicherà al compilatore che va bene non usarla ed eviterà che il programma generi un avviso:
for _i in 0..5 {
println!("Hello!");
}Sfida
PrincipianteLeggi un intero n (il codice iniziale lo fa già). Usa un ciclo for per stampare "Hello Coddy: " e il valore di i per ogni numero da 3 a n, inclusi.
Ad esempio, se n è 6, l'output è:
Hello Coddy: 3
Hello Coddy: 4
Hello Coddy: 5
Hello Coddy: 6Se n è 27, il ciclo stampa 25 righe, da Hello Coddy: 3 a Hello Coddy: 27.
Provalo tu
use std::io;
fn main() {
let mut input = String::new();
io::stdin().read_line(&mut input).unwrap();
let n: i32 = input.trim().parse().unwrap();
// Scrivi il tuo codice qui sotto
}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