Café y Código

5. Condicionales (Toma de Decisiones)

La estructura If / Else

El condicional if (Si) evalúa una expresión lógica (que devuelve `true` o `false`). Si es verdadera, ejecuta el bloque de código dentro de las llaves { }. Si es falsa, ejecuta el bloque else (Sino).

If / Else básico
CSHARP
1 int edad = 18;
2
3 if (edad >= 18)
4 {
5 Console.WriteLine("Eres mayor de edad, puedes entrar.");
6 }
7 else
8 {
9 Console.WriteLine("Lo siento, eres menor de edad.");
10 }

If / Else If / Else

Cuando tienes más de dos caminos posibles, puedes encadenar las condiciones usando else if. C# evaluará una por una desde arriba hacia abajo y ejecutará solo la primera que sea verdadera.

Condiciones encadenadas
CSHARP
1 double nota = 8.5;
2
3 if (nota >= 9.0)
4 {
5 Console.WriteLine("¡Excelente!");
6 }
7 else if (nota >= 6.0)
8 {
9 Console.WriteLine("Aprobado.");
10 }
11 else
12 {
13 Console.WriteLine("Debes estudiar más.");
14 }

El Condicional Switch

El switch es ideal cuando quieres evaluar una sola variable contra muchos valores exactos (como un menú de opciones). Es más limpio y rápido que hacer muchos `if-else`.

Estructura Switch
CSHARP
1 int diaSemana = 3;
2
3 switch (diaSemana)
4 {
5 case 1:
6 Console.WriteLine("Es Lunes.");
7 break; // break es obligatorio para salir del switch
8 case 2:
9 Console.WriteLine("Es Martes.");
10 break;
11 case 3:
12 Console.WriteLine("Es Miércoles.");
13 break;
14 default:
15 Console.WriteLine("No es inicio de semana.");
16 break;
17 }

👨‍💻 Ejercicio Práctico

Misión: Revisor de números

Usa una estructura if-else if-else para evaluar un número. Si es mayor a 0 imprime "Positivo", si es menor a 0 "Negativo", si es 0 "Cero".

👁️ Ver solución propuesta
CSHARP
1 int num = -5;
2
3 if (num > 0)
4 {
5 Console.WriteLine("Positivo");
6 }
7 else if (num < 0)
8 {
9 Console.WriteLine("Negativo");
10 }
11 else
12 {
13 Console.WriteLine("Cero");
14 }

👨‍💻 Ejercicio Práctico 2

Misión: Validador de Contraseñas

Define una variable string con "1234". Usa un if para ver si es igual a "1234". Si es cierto imprime "Acceso concedido", Sino imprime "Bloqueado".

👁️ Ver solución propuesta
CSHARP
1 string pass = "1234";
2 if (pass == "1234") {
3 Console.WriteLine("Acceso concedido");
4 } else {
5 Console.WriteLine("Bloqueado");
6 }

👨‍💻 Ejercicio Práctico 3

Misión: El Día de la Semana

Usa una estructura switch. Si el valor es 1 imprime "Lunes", si es 2 "Martes", y con un default imprime "Fin de semana".

👁️ Ver solución propuesta
CSHARP
1 int dia = 2;
2 switch(dia)
3 {
4 case 1: Console.WriteLine("Lunes"); break;
5 case 2: Console.WriteLine("Martes"); break;
6 default: Console.WriteLine("Fin de semana"); break;
7 }

👨‍💻 Ejercicio Práctico 4

Misión: If Múltiple (Else If)

Usando else if, comprueba si un alumno sacó más de > 90 (A), > 80 (B), o sino (C).

👁️ Ver solución propuesta
CSHARP
1 int nota = 85;
2 if (nota >= 90) Console.WriteLine("A");
3 else if (nota >= 80) Console.WriteLine("B");
4 else Console.WriteLine("C");

Ponte a prueba

Comprueba tus conocimientos sobre este tema realizando nuestro pequeño test.

Dato curioso: Microsoft lo presentó en 2000; C# 1.0 con .NET en 2002 (Anders Hejlsberg). Wikipedia

Ko-fi
Donaciones
Apoyá cafeycodigo con un café en Ko-fi. Colaboradores: insignia, muro y zona exclusiva.