If-Else
Parte de la sección Fundamentals del Journey de Rust de Coddy — lección 25 de 75.
if nos permite ejecutar código específico si se cumple una condición, pero ¿qué pasa si queremos ejecutar algo más si no se cumple la condición?
Para eso tenemos la sentencia else:
let age: i32 = 15;
let status = if age >= 18 {
"Adult"
} else {
"Young"
};En el ejemplo anterior, age es menor que 18, lo que significa que entra en el código else y status contendrá "Young".
Incluso podemos hacerlo más profundo utilizando la sentencia else if:
let age: i32 = 68;
let status = if age < 18 {
"Young"
} else if age >= 18 && age <= 65 {
"Adult"
} else {
"Old"
};Aquí comprueba si age es menor que 18; si no, continuará con la siguiente condición y comprobará si age está entre 18 y 65. Si esa condición tampoco se cumple, establecerá status como "Old".
Podemos añadir tantas sentencias else if como queramos:
if condition1 {
code;
} else if condition2 {
code;
} else if condition3 {
code;
}
...Desafío
PrincipianteSe te proporciona un código que recibe como entrada un número que indica la velocidad del viento y lo almacena en una variable llamada wind.
Nota: aprenderemos en las próximas lecciones cómo obtener la entrada del usuario, por ahora simplemente no toques las primeras líneas.
Tu tarea es inicializar la variable status basándote en las siguientes condiciones:
"Calm"siwindes menor que8,"Breeze"siwindestá entre8y31(incluyendo 8 y 31)."Gale"siwindestá entre32y63(incluyendo 32 y 63)"Storm"de lo contrario
Consulta los casos de prueba para ver todas las entradas y las salidas esperadas
Hoja de referencia
Usa else para ejecutar código cuando la condición if no se cumple:
let age: i32 = 15;
let status = if age >= 18 {
"Adult"
} else {
"Young"
};Usa else if para verificar múltiples condiciones:
let age: i32 = 68;
let status = if age < 18 {
"Young"
} else if age >= 18 && age <= 65 {
"Adult"
} else {
"Old"
};Puedes encadenar múltiples sentencias else if:
if condition1 {
code;
} else if condition2 {
code;
} else if condition3 {
code;
}Pruébalo tú mismo
use std::io;
fn main() {
let mut input = String::new();
io::stdin().read_line(&mut input).unwrap();
let wind: i32 = input.trim().parse().unwrap();
// Reemplaza la línea de abajo con una expresión if-else que asigne el estado basado en el viento
let status = "unset";
// No cambies la línea de abajo
println!("status = {}", status);
}Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.
Todas las lecciones de Fundamentals
4Operadores Parte 1
Operadores aritméticosOperador de móduloAtajos aritméticosOperadores de comparaciónComparación de strings5Operadores Parte 2
Operadores lógicos Parte 1Operadores lógicos Parte 2Repaso - Lógica simpleOperadores lógicos Parte 33Variables Parte 2
Declaración de tiposConvenciones de nomenclaturaInferencia de tiposResumen - Inicializar variablesConversión de tipos9Bucles
For sobre seriesBucle WhileBreakContinueBucle anidadoEtiquetas de bucleBucle infinitoResumen - Entrada dinámica