Tabla de Contenidos
Bloques de Código
If
El bloque de código if
es aquel el cual nos permite validar si una expresión se cumple o no, y por lo tanto poder tomar caminos distintos dependiendo del resultado obtenido.
Cuando hablamos de bloques if
tenemos las siguientes combinaciones:
- if
- if .. else
- if .. else if .. else
Las sintaxis pueden ser una de las siguientes:
if ( expresión ) { verdadero } if ( expresión ) { verdadero } else { false } if ( expresión ) { verdadero } else if ( expresión ) { verdadero } else { falso }
Donde:
- if.- Es una palabra reservada con la que se inicia una pregunta.
- expresión.- Es cualquier operación de conjunto de operadores relacionales los cuales dan como resultado una valor boleano.
- verdaro.- Es el conjunto de instrucciones que se ejecutarán en caso de que la expresión sea verdadero.
- else if.- Son un conjunto de palabras reservadas las cuales nos permiten validar otra expresión en caso de que la expresión anterior no haya sido verdadera.
- else.- Es una palabra reservada la cual se encargara de gestionar todas las expresiones en caso de ser falso.
- false.- es el conjunto de instrucciones que se ejecutarán en caso de ser falso.
Switch
switch
es una instrucción de selección que elige una sola sección switch para ejecutarla desde una lista de candidatos en función de una coincidencia de patrones con la expresión de coincidencia.
La instrucción switch
se suele usar como alternativa a un constructor if-else
si una sola expresión se prueba con tres o más condiciones.
int caseSwitch = 1; switch (caseSwitch) { case 1: Console.WriteLine("Case 1"); break; case 2: Console.WriteLine("Case 2"); break; default: Console.WriteLine("Default case"); break; }
Expresión de coincidencia
La expresión de coincidencia proporciona el valor que debe coincidir con los patrones de las etiquetas case
. Su sintaxis es:
switch (expr)
En C# 6, la expresión de coincidencia debe ser una expresión que devuelva un valor de los siguientes tipos:
- Un carácter.
- Una cadena.
- Un booleano.
- Un valor entero, como int o long.
- Un valor enum.
A partir de C# 7, la expresión de coincidencia puede ser cualquier expresión que no sea nula.
Sección switch
Una instrucción switch
incluye una o más secciones switch. Cada sección switch contiene una o más etiquetas case seguidas de una o más instrucciones. En el ejemplo siguiente se muestra una instrucción switch
simple con tres secciones switch. Cada sección switch tiene una etiqueta case
, por ejemplo, case 1:, y dos instrucciones.
Una instrucción switch
puede incluir cualquier número de secciones switch y cada sección puede tener una o más etiquetas case, como se muestra en el ejemplo siguiente. Pero dos etiquetas case no pueden contener la misma expresión.
using System; public class Example { public static void Main() { Random rnd = new Random(); int caseSwitch = rnd.Next(1,4); switch (caseSwitch) { case 1: Console.WriteLine("Case 1"); break; case 2: case 3: Console.WriteLine($"Case {caseSwitch}"); break; default: Console.WriteLine($"An unexpected value ({caseSwitch})"); break; } } }
For
Un bloque for nos permite ejecutar iteraciones de código, es decir, nos permite que un bloque de código se ejecute en N ocasiones.
La sintaxis
for (inicializador; condicion; iterador) { ... } for (inicializador; condicion; iterador) { if (condicion_salida) break; } for (inicializador; condicion; iterador) { if (condicion_salto) continue; }
- for, palabra reservada que marca el inicio de la iteración.
- inicializador, expresión que indica a partir de donde inciará la iteración.
- condicion, expresión que indica cuando terminará la iteracíon.
- iterador, expresión que indica de que modo itera el ciclo.
- condicion_salida, expresión que al cumplirse nos permitirá cortar la iteración.
- break, palabra reservada que termina la iteración sin necesidad de que se cumpla la condición.
- condicion_salto, expresión que al cumplirse nos permitirá saltar la ejecución de código hasta la próxima iteración.
- continue, palabra reservada que salta la iteración actual omitiendo todo el código que resta hasta la siguiente iteración.
inicializador
tipo_de_dato contador = valor_inicial; int contador = 1000; int contador = 1000; int contador = variable_fin;
- tipo_de_dato, cualquier tipo de dato númerico que sirva para almacenar el contador.
- contador , es la variable en la cual se almacenará el valor del contador y llevara el control de que iteración va.
- valor_inicial, puede ser una constante o una variable con el valor inicial a partir de la cual iniciará la iteración.
condición
contador operador_condicional valor_final; contador <= 0; contador >= 1000; contador == 100; contador == variable; contador < 1000; contador > 0;
- contador, es la variable que se usó en el inicializador.
- operador_condicional, cualquier expresión formada por un operador de condición el cual al cumplirse se da por finalizada la iteración.
- valor_final, puede ser una constante o variable la cual indique el valor final de las iteraciones a ejecutar.
iterador
contador operador incremento contador++ //incremento en 1 contador-- //decremento en 1 contador += 2 //incremento en 2 contador -= 2 //decremento en 2 contador *= 2 //incremento en multiplo de 2 contador /= 2 //decremento en multiplo de 2
- contador, la variable que lleva el control de la iteración.
- operador, el operador que se usará para incrementar o decrementar el valor del contador para controlar la interación.
- incremento, valor por el cual controlará el incremento o decremento.