2.1.4. if-else
Curso: Programación en C# (2015), por Nacho Cabanes
2.1.4. if-else
Podemos indicar lo que queremos que ocurra en caso de que no se cumpla la condición, usando la orden "else" (en caso contrario), así:
// Ejemplo_02_01_04a.cs // Condiciones con if (4): caso contrario ("else") // Introducción a C#, por Nacho Cabanes using System; public class Ejemplo_02_01_04a { public static void Main() { int numero; Console.WriteLine("Introduce un número"); numero = Convert.ToInt32(Console.ReadLine()); if (numero > 0) Console.WriteLine("El número es positivo."); else Console.WriteLine("El número es cero o negativo."); } }
Podríamos intentar evitar el uso de "else" si utilizamos un "if" a continuación de otro, así:
// Ejemplo_02_01_04b.cs // Condiciones con if (5): caso contrario, sin "else" // Introducción a C#, por Nacho Cabanes using System; public class Ejemplo_02_01_04b { public static void Main() { int numero; Console.WriteLine("Introduce un número"); numero = Convert.ToInt32(Console.ReadLine()); if (numero > 0) Console.WriteLine("El número es positivo."); if (numero <= 0) Console.WriteLine("El número es cero o negativo."); } }
Pero el comportamiento no es el mismo: en el primer caso (ejemplo 02_01_04a) se mira si el valor es positivo; si no lo es, se pasa a la segunda orden, pero si lo es, el programa ya ha terminado. En el segundo caso (ejemplo 02_01_04b), aunque el número sea positivo, se vuelve a realizar la segunda comprobación para ver si es negativo o cero, por lo que el programa es algo más lento.
Podemos enlazar varios "if" usando "else", para decir "si no se cumple esta condición, mira a ver si se cumple esta otra":
// Ejemplo_02_01_04c.cs // Condiciones con if (6): condiciones encadenadas // Introducción a C#, por Nacho Cabanes using System; public class Ejemplo_02_01_04c { public static void Main() { int numero; Console.WriteLine("Introduce un número"); numero = Convert.ToInt32#40;Console.ReadLine()); if (numero > 0) Console.WriteLine("El número es positivo."); else if (numero < 0) Console.WriteLine("El número es negativo."); else Console.WriteLine("El número es cero."); } }
Ejercicios propuestos:
Ejercicio propuesto 2.1.4.1: Mejora la solución al ejercicio 2.1.3.1, usando "else".
Ejercicio propuesto 2.1.4.2: Mejora la solución al ejercicio 2.1.3.2, usando "else".
Actualizado el: 21-10-2014 15:53