typestar

Bucles que devuelven valores en Rust

loop es una expresión: break saca un valor, y las etiquetas eligen qué bucle dejar.

fn main() {
    let mut n = 1;
    let doubled = loop {
        n *= 2;
        if n > 50 {
            break n;
        }
    };
    println!("first over fifty: {doubled}");

    'outer: for a in 1..10 {
        for b in 1..10 {
            if a * b == 12 {
                println!("{a} x {b}");
                break 'outer;
            }
        }
    }
}

Cómo funciona

  1. break value hace que el loop evalúe a ese valor.
  2. Una 'label deja que un bucle interno rompa el externo.
  3. continue 'outer salta a la siguiente iteración externa.

Palabras clave y builtins usados aquí

El intento, en números

Líneas
19
Caracteres a escribir
227
Tokens
78
Ritmo de tres estrellas
85 tpm

Al ritmo de tres estrellas de 85 tokens por minuto, este intento toma unos 55 segundos.

Escribe este fragmento

Paso 4 de 8 en Control de flujo; paso 14 de 39 en Fundamentos del lenguaje.

← Anterior Siguiente →