If - Else anidados
Parte de la sección Fundamentos del Journey de C# de Coddy — lección 30 de 69.
Podemos anidar sentencias if-elif-else unas dentro de otras. Esto nos permite crear estructuras jerárquicas de toma de decisiones.
Por ejemplo:
if (age > 18) {
if (hasLicense) {
Console.WriteLine("You can drive");
} else {
Console.WriteLine("Get a license first");
}
} else {
Console.WriteLine("Too young to drive");
}
Puede anidarse infinitamente:
if (condition1) {
if (condition2) {
if (condition3) {
// si condition1, condition2 y condition3 son verdaderas
...
}
}
}Desafío
PrincipianteCrea un programa que verifique si alguien puede subir a una montaña rusa. Los requisitos son:
- Debe tener al menos 12 años
- Debe medir más de 150 cm
- Si cumplen ambos requisitos pero son menores de 15 años, necesitan supervisión de un adulto
Asigna a la variable status exactamente estas cadenas para cada caso:
- Si es demasiado joven:
Sorry, you're too young - Si no es lo suficientemente alto:
Sorry, you're not tall enough - Si es menor de 15 años y no hay un adulto:
Sorry, you need an adult with you - Si es menor de 15 años con un adulto:
You can ride with adult supervision! - Si tiene 15 años o más y es lo suficientemente alto:
You can ride by yourself!
Hoja de referencia
Puedes anidar sentencias if-elif-else unas dentro de otras para crear estructuras de toma de decisiones jerárquicas:
if (age > 18) {
if (hasLicense) {
Console.WriteLine("You can drive");
} else {
Console.WriteLine("Get a license first");
}
} else {
Console.WriteLine("Too young to drive");
}
El anidamiento se puede hacer de forma infinita:
if (condition1) {
if (condition2) {
if (condition3) {
// si condition1, condition2 y condition3 son verdaderas
...
}
}
}Pruébalo tú mismo
using System;
class Program {
public static void Main(string[] args) {
int age = int.Parse(Console.ReadLine()); // No cambies esta línea
int height = int.Parse(Console.ReadLine()); // No cambies esta línea
bool hasAdult = bool.Parse(Console.ReadLine()); // No cambies esta línea
string status = "";
// Escribe tu código debajo
// No cambies debajo de esta línea
Console.WriteLine(status);
}
}Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.
Todas las lecciones de Fundamentos
4Operadores Parte 1
Operadores aritméticosOperador de móduloIncremento/DecrementoPost-incremento/decrementoAtajos aritméticos7Entrada y Salida Básica
Salida BásicaInterpolación de CadenasLectura de EntradaParseoResumen - Hasta 120Resumen - Verdadero o Falso5Operadores Parte 2
Operadores de comparaciónOperadores lógicos Parte 1Operadores lógicos Parte 2Repaso - Lógica simpleOperadores lógicos Parte 33Variables Parte 2
VarConstantesConvenciones de NomenclaturaResumen - Inicializar VariablesConversión de Tipos6Toma de decisiones
Sentencia IfIf - ElseSentencia SwitchOperador ternarioResumen - If ElseIf - Else anidados