Qué hace este ejercicio
Lee una velocidad del viento como entero con signo y muestra una categoría en inglés: Calm, Breeze, Gale o Storm. La tercera etapa añade entrada por teclado y decisiones encadenadas.
Explicación
Después de leer una línea, trim elimina el salto final y parse convierte el texto a i32. La cadena de condiciones se usa como una expresión cuyo resultado se asigna a status.
let status = if wind < 8 {
"Calm"
} else if wind <= 31 {
"Breeze"
} else if wind <= 63 {
"Gale"
} else {
"Storm"
};
Los límites efectivos son: menos de 8, de 8 a 31, de 32 a 63 y 64 o más. Como la lectura y el parseo usan unwrap, una entrada que no sea un entero hace que el programa termine con un error.
Conceptos practicados
- Lectura desde
std::io::stdin. - Conversión de texto a
i32. - Condiciones
if,else ifyelse. - Uso de una condición como expresión con resultado.
Cómo ejecutarlo
Ejecuta el binario y escribe un entero cuando la terminal espere la entrada:
cargo run --bin desafioIfElse
Por ejemplo, con 45 la salida será status = Gale.
cargo run --bin desafioIfElse
45
status = Gale Ejemplo: este programa lee una entrada. Con 45 produce la salida de arriba.