Domina el control de flujo en C# con if, else y else if para evaluar condiciones y tomar decisiones confiables. Aquí verás cómo comparar valores, encadenar condiciones con && y ||, aplicar la negación ! y usar el operador módulo (%) para validar residuos, todo con ejemplos simples que imprimen mensajes en consola desde Visual Studio Code (aprovechando using static para WriteLine).
¿Cómo funciona if, else y else if en C#?
El operador if evalúa una condición booleana: si es verdadera, ejecuta un bloque; si no, puedes usar else para un camino alterno. También puedes encadenar tantas ramas como necesites con else if.
// valores basebool respuesta =(10==10);// trueint cantidad =10;if(respuesta){ Console.WriteLine("Se cumplió la condición 1.");}elseif(cantidad >5){ Console.WriteLine("Se cumplió la condición 2.");}else{ Console.WriteLine("No se cumplió ninguna condición.");}
if evalúa una condición booleana y ejecuta si es true.
else es opcional y cubre el caso contrario.
else if agrega más preguntas en cadena.
Puedes tener muchos else if: diez, veinte o cien.
¿Cuándo conviene usar else y cuándo omitirlo?
Úsalo si necesitas una acción clara cuando no se cumpla la condición.
Omítelo si el caso contrario no requiere lógica adicional.
En cadenas largas, ubica primero las condiciones más probables.
¿Qué operadores lógicos y de comparación usar?
Para comparar y combinar condiciones, utiliza operadores de comparación y lógicos. Evita confundir asignación (=) con comparación (==).
// comparaciónbool respuesta =(10==10);// trueint cantidad =10;// and lógico: ambas deben ser verdaderasif(cantidad >5&& respuesta ==true){ Console.WriteLine("Se cumplió la condición 4.");}// simplificación: comparar con true/false es redundantea
if(cantidad >5&& respuesta){ Console.WriteLine("Se cumplió la condición 4.");}// or lógico: basta con que una sea verdaderaif((cantidad >5)||(!respuesta)){ Console.WriteLine("Se cumplió la condición 5.");}
== compara igualdad; != compara diferencia.
, <, >=, <= comparan magnitudes.
&& exige que todas las condiciones sean verdaderas.
|| acepta que una sola condición verdadera baste.
! invierte el valor booleano.
respuesta != false equivale a respuesta == true, que puede escribirse simplemente respuesta.
Cuidado: = asigna; == compara.
¿Cómo validar escenarios verdaderos y falsos rápidamente?
Fuerza una condición a false para probar else if y else.
Niega variables con !respuesta para probar caminos alternos.
¿Cómo combinar condiciones y usar módulo (%) sin errores?
Agrupa condiciones con paréntesis para dejar clara la prioridad. Usa % (módulo) para evaluar residuos de una división, por ejemplo, comprobar si un número es múltiplo de 5.
int cantidad =10;// prueba con 10, luego 11 y 15bool respuesta =true;// cambia a false para probar// grupo 1: al menos una verdadera (or)// grupo 2: debe cumplirse sí o sí (and) y ser múltiplo de 5if((cantidad >5||!respuesta)&&(cantidad %5==0)){ Console.WriteLine("Se cumplió la condición 5.");}else{ Console.WriteLine("No se cumplió la condición 5.");}
Paréntesis aclaran la intención y evitan errores de precedencia.
% devuelve el residuo de la división; cantidad % 5 == 0 verifica múltiplos de 5.
Si cantidad = 10 y respuesta = true: todo se cumple.
Si cambias cantidad a 11: el residuo es 1 y la condición del módulo falla.
Si cantidad = 15 pero ambas del grupo (cantidad > 5 || !respuesta) son falsas, no pasa.
Recuerda: en comparaciones usa ==, no =.
¿Qué patrones lógicos conviene practicar?
Combinaciones con && cuando todas las condiciones son obligatorias.
Combinaciones con || cuando basta una condición.
Negación con ! para invertir banderas booleanas.
Encadenar else if para múltiples alternativas.
¿Tienes un caso práctico que quieras validar con if, else y operadores lógicos? Cuéntalo en los comentarios y comparte tu ejemplo en C#.