If - Else anidados
Parte de la sección Fundamentos del Journey de C# de Coddy. Lección 30 de 69.
Podemos anidar instrucciones if-else unas dentro de otras. Esto nos permite crear estructuras jerárquicas para tomar 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 tener anidamientos infinitos:
if (condition1) {
if (condition2) {
if (condition3) {
// si condition1, condition2 y condition3 son verdaderas
...
}
}
}Sin llaves, un else se empareja con el if más cercano que haya encima y que todavía no tenga un else:
if (age > 18)
if (hasLicense)
Console.WriteLine("You can drive");
else
Console.WriteLine("Get a license first");Aquí, el else pertenece a if (hasLicense), independientemente de lo que indique la sangría. Usa llaves para que el emparejamiento quede claro.
Desafío
PrincipianteCrea un programa que compruebe si alguien puede subirse a una montaña rusa. Los requisitos son:
- Debe tener al menos 12 años
- Debe medir más de 150 cm
- Si cumple ambos requisitos, pero tiene menos de 15 años, necesita la 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 mide lo suficiente:
Sorry, you're not tall enough - Si tiene menos de 15 años y no hay ningún adulto:
Sorry, you need an adult with you - Si tiene menos de 15 años y hay un adulto:
You can ride with adult supervision! - Si tiene 15 años o más y mide lo suficiente:
You can ride by yourself!
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 a continuación
// No cambies nada 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 anidadosPractica por tu cuenta: Compilador de C# online