Ciclo infinito
Fa parte della sezione Fondamenti del percorso Rust di Coddy. Lezione 43 di 75.
In Rust, puoi creare cicli infiniti usando loop o while true. Entrambi continuano a essere eseguiti finché non vengono interrotti esplicitamente con break o con la terminazione del programma.
Per esempio:
loop {
// Codice da eseguire ripetutamente
if condition {
break; // Esci dal ciclo se la condizione è soddisfatta
}
}Il ciclo continua finché non raggiunge un break. È utile per i programmi che devono essere eseguiti continuamente, come i server o i dispositivi.
Ecco un esempio di ciclo infinito che stampa numeri finché non viene soddisfatta una condizione specifica:
let mut count = 0;
loop {
println!("Count: {}", count);
count += 1;
if count > 5 {
break;
// Esci dal ciclo quando count è maggiore di 5
}
}In questo esempio, il ciclo stamperà i numeri da 0 a 5 e poi terminerà quando count diventa 6.
Sfida
PrincipianteScrivi un programma Rust che simuli un semplice contatore. Il programma dovrebbe usare un ciclo infinito per incrementare continuamente un contatore e stamparne il valore. Il ciclo dovrebbe terminare quando il contatore raggiunge un valore specifico determinato dall'input.
Passaggi per il programma:
- Inizializza una variabile mutabile
countera 0. - Usa un ciclo infinito (
loop) per incrementare continuamentecounterdi 1 a ogni iterazione. - All'interno del ciclo, stampa il valore corrente di
counter. - Controlla se
counterè uguale al valore di terminazione fornito dall'utente. In caso affermativo, esci dal ciclo.
Provalo tu
use std::io;
fn main() {
let mut input = String::new();
io::stdin().read_line(&mut input).unwrap();
let limit: i32 = input.trim().parse().unwrap();
let mut counter = 0;
// 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