Loop Infinito
Parte da seção Fundamentals do Journey de Rust da Coddy — lição 43 de 75.
Em Rust, loops infinitos podem ser criados usando tanto loop quanto while true. Ambos são executados até serem explicitamente interrompidos com break ou pelo término do programa.
Por exemplo:
loop {
// Código a ser executado repetidamente
if condition {
break; // Sai do loop se a condição for atendida
}
}O loop continua até atingir um break. É útil para programas que precisam ser executados continuamente, como servidores ou dispositivos.
Aqui está um exemplo de um loop infinito que imprime números até que uma condição específica seja atendida:
let mut count = 0;
loop {
println!("Count: {}", count);
count += 1;
if count > 5 {
break;
// Sair do loop quando count for maior que 5
}
}Neste exemplo, o loop imprimirá números de 0 a 5 e então sairá quando count se tornar 6.
Desafio
InicianteEscreva um programa em Rust que simule um contador simples. O programa deve usar um loop infinito para incrementar continuamente um contador e imprimir seu valor. O loop deve terminar quando o contador atingir um valor específico determinado pela entrada.
Passos para o programa:
- Inicialize uma variável mutável
countercomo 0. - Use um loop infinito (
loop) para incrementar continuamente ocounterem 1 a cada iteração. - Dentro do loop, imprima o valor atual de
counter. - Verifique se
counteré igual ao valor de terminação fornecido pelo usuário. Se for, saia do loop.
Folha de consulta
Loops infinitos em Rust podem ser criados usando loop ou while true. Eles são executados até serem explicitamente interrompidos com break.
Sintaxe básica de loop infinito:
loop {
// Código a ser executado repetidamente
if condition {
break; // Sai do loop se a condição for atendida
}
}Exemplo com contador:
let mut count = 0;
loop {
println!("Count: {}", count);
count += 1;
if count > 5 {
break;
}
}Experimente você mesmo
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;
// Escreva seu código abaixo
}Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.
Todas as lições de Fundamentals
4Operadores Parte 1
Operadores AritméticosOperador de MóduloAtalhos AritméticosOperadores de ComparaçãoComparação de Strings7Entrada e Saída Básica
Exibindo no ConsoleLendo a Entrada do UsuárioRevisão - Até 120Revisão - Verdadeiro ou Falso5Operadores Parte 2
Operadores Lógicos Parte 1Operadores Lógicos Parte 2Recapitulação - Lógica SimplesOperadores Lógicos Parte 33Variáveis Parte 2
Declaração de TipoConvenções de NomenclaturaInferência de TipoRecapitulação - Inicializar VariáveisConversão de Tipo9Laços
For sobre SériesLaço WhileBreakContinueLaços AninhadosRótulos de LoopLoop InfinitoRecapitulação - Entrada Dinâmica