lunes, 13 de junio de 2011

C# - Mas IF [Básico]



En el anterior tutorial, vimos como usar básicamente el IF.
Iba simple, se compara algo, si la comparación era verdadera entonces hacia algo, de lo contrario hacia otra cosa.
Hasta ahí todo bien, pero nosotros podemos ampliar nuestros IF, imaginemos que necesitamos comparar si una variable tiene algunos de los números 1, 2 o 3:
if(num1 == 1)
{
Console.WriteLine("El numero es 1");
}
else
{
Console.WriteLine("El numero es 2");
}
?


Nos falta la tercera comparación. La clave esta en "de lo contrario, si...".
si de lo contrario multiples
Crearemos un nuevo proyecto de tipo Consola, y le pondremos el siguiente codigo.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace MiAplicacion_4
{
class Program
{
static void Main(string[] args)
{
int num1;
num1 = 1;
if (num1 == 1)
{
Console.WriteLine("El numero es 1");
}
else
{
Console.WriteLine("El numero es 2");
}
}
Console.ReadKey();
}
}
?

Si nosotros queremos hacer lo que dijimos al principio, debemos hacer esto.
if (num1 == 1)
{
Console.WriteLine("El numero es 1");
}
else if (num1 == 2)
{
Console.WriteLine("El numero es 2");
}
else if (num1 == 3)
{
Console.WriteLine("El numero es 3");
}
?

Si num1 es igual a 1, entonces escribimos algo.
De lo contrario si num1 es igual a 2, escribimos otra cosa.
De lo Contrario si num1 es igual a 3, escribimos otra cosa.

Nada dificil, no?, podemos repetir ese proceso de "de lo contrario si" todas las veces que queramos.
En el código anterior también podemos terminar el código con un else, diciendo con el WriteLine algo como "La variable no es ninguno de los números comparados" para que quede prolijo.
if (num1 == 1)
{
Console.WriteLine("El numero es 1");
}
else if (num1 == 2)
{
Console.WriteLine("El numero es 2");
}
else if (num1 == 3)
{
Console.WriteLine("El numero es 3");
}
else
{
Console.WriteLine("La variable no es ninguno de los números comparados");
}

?
AND y OR
El ultimo detalle que nos queda de los IF, son los AND y OR. Nosotros podemos comparar no solo una variable dentro de un IF, sino muchísimas, para eso utilizamos AND y OR, como su nombre lo indica uno sirve para comparar "Y" y el otro "O".

Para esta parte, crearemos una variable mas que se llame num2, y le pondremos cualquiera valor.
if (num1 == 1 && num2 == 2)
{
Console.WriteLine("Num1 vale 1 y Num2 vale 2");
}
?

Ahi comparamos si num1 es igual a 1 Y si num2 es igual a 2.
if (num1 == 1 | num2 == 2)
{
Console.WriteLine("Num1 vale 1 o Num2 vale 2");
}
?

En esta parte vemos si num1 es igual a 1 O num2 es igual a 2.
Y = &&
O = |

Nosotros podemos usar "Y" u "O" todas las veces que queramos en una misma comparación, siempre separandolos con los && o |.

Acá termina el tutorial, para el próximo tutorial usaremos todo lo aprendido hasta ahora para hacer un pequeño programa.

Codigo completo
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace MiAplicacion_4
{
class Program
{
static void Main(string[] args)
{
int num1;
int num2;
num1 = 1;
num2 = 2;
if (num1 == 1)
{
Console.WriteLine("El numero es 1");
}
else if (num1 == 2)
{
Console.WriteLine("El numero es 2");
}
else if (num1 == 3)
{
Console.WriteLine("El numero es 3");
}
if (num1 == 1 && num2 == 2)
{
Console.WriteLine("Num1 vale 1 y Num2 vale 2");
}
if (num1 == 1 | num2 == 2)
{
Console.WriteLine("Num1 vale 1 o Num2 vale 2");
}
}
Console.ReadKey();
}
}
?

Descarga SourceCode