Guida ai range
Fa parte della sezione Fondamenti del percorso Rust di Coddy. Lezione 65 di 75.
In questa lezione esploreremo più a fondo come funziona range.
Sintassi di base degli intervalli:
start..end- Crea un intervallo da start a end (escluso)start..=end- Crea un intervallo da start a end (incluso)
..end- Crea un intervallo da 0 a end (escluso)..=end- Crea un intervallo da 0 a end (incluso)
start..- Crea un intervallo da start all'infinito..- Crea un intervallo da meno infinito a più infinito
Intervallo inverso usando .rev():
(0..5).rev()- 4, 3, 2, 1, 0(0..=5).rev()- 5, 4, 3, 2, 1, 0
Salti di passo usando .step_by(n):
(0..10).step_by(2)- 0, 2, 4, 6, 8(0..10).rev().step_by(2)- 9, 7, 5, 3, 1
Per esempio:
// Intervallo crescente di base
for i in 0..5 { }
// Valori: 0, 1, 2, 3, 4// Intervallo inclusivo
for i in 0..=5 { }
// Valori: 0, 1, 2, 3, 4, 5// Intervallo inverso
for i in (0..5).rev() { }
// Valori: 4, 3, 2, 1, 0// Avanza di 2
for i in (0..10).step_by(2) { }
// Valori: 0, 2, 4, 6, 8// Combine reverse and step
for i in (0..10).rev().step_by(3) { }
// Values: 9, 6, 3, 0Sfida
FacileTi vengono forniti due array, numbers1 e numbers2. Stampa una riga per ciascuno:
- Array 1: parti dall'ultima posizione di
numbers1e procedi all'indietro di 3 posizioni alla volta (indici 25, 22, 19, ...), stampando il valore in ciascuna posizione. - Array 2: scorri
numbers2dall'ultimo elemento al primo e stampa solo i valori divisibili per 4.
Stampa ogni valore tra parentesi quadre, con , tra i valori e senza nulla dopo l'ultimo:
Array 1: [26], [23], [20], ...
Array 2: [36], [36], ...Provalo tu
fn main() {
let numbers1 = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26];
let numbers2 = [17, 53, 24, 77, 84, 98, 24, 36, 89, 31, 36];
print!("Array 1: ");
// Scrivi il tuo codice qui
println!();
print!("Array 2: ");
// Scrivi il tuo codice qui
}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