Menu
Coddy logo textTech

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.

challenge icon

Desafio

Iniciante

Escreva 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:

  1. Inicialize uma variável mutável counter como 0.
  2. Use um loop infinito (loop) para incrementar continuamente o counter em 1 a cada iteração.
  3. Dentro do loop, imprima o valor atual de counter.
  4. 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

}
quiz iconTeste seus conhecimentos

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