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#.
Un aporte que depronto en algún momento de su vida les pueda servir es que null es != de ‘’ (vacio). muchas veces se puede llegar a confundir un valor vacío con un valor nulo.
Una forma en la que se puede simplificar la declaración de los if puede ser con el operador ternario ‘?’ el cual trata de reducir la condición y sus posibles respuestas en una sola línea de código.
var rta = (condiciones) ? “valor en caso de verdadero” : “valor en caso de falso”;
A continuación adjunto un ejemplo de una función que determina si un número es par o impar:
static void Main(string[] args)
{
var rta = verificarParImpar(10);
WriteLine (rta);
}
public static string verificarParImpar(int numero)
{
return (numero % 2 == 0) ? “Par” : “Impar”;
}
Si quieren profundizar acerca del tema, a continuación adjunto link de wikipedia:
Una utilidad para la operación MOD o % es para hallar números primos
using System;using System.Collections.Generic;using System.Linq;using System.Text;namespace Main{classProgram{staticvoidMain(string[] args){ int a=0,i,n;Console.WriteLine("Ingrese numero"); n =Convert.ToInt32(Console.ReadLine());for(i=1;i<(n+1);i++){if(n%i==0){ a++;}}if(a!=2){Console.WriteLine("No es Primo");}else{Console.WriteLine("Si es Primo");}Console.ReadLine();}
en los primeros videos se explica ;) , es una demostración de que en c# se admiten caracteres especiales con total soporte para la internacionalización de su código.
El comportamiento exclusivo, hace que solo nos retorne TRUE cuando hay una, y sola una condición verdadera. Un ejemplo con mas condiciones que retorne un valor TRUE sería:
(False) (False) (True) (False) (False) = True
Ya que una, y solo una resultó verdadera. En caso de que hubiera mas de una, el resultado cambiaria.
Una declaración if es una instrucción que se ejecuta cuando una condición es verdadera.
La condición puede ser cualquier cosa que devuelva true o false.
.
Una clausula opcional else puede ser especificada para ejecutar un bloque de código cuando la condición en la declaración if evalua a falso.
.
Hacemos uso de los operadores relacionales para evaluar condiciones.
.
Hacemos uso de los operadores lógicos para unir multiples expresiones que devuelvan true o false.
.