Diferencias

Muestra las diferencias entre dos versiones de la página.

Enlace a la vista de comparación

Próxima revisión
Revisión previa
cap:cs:bloques [2017/05/05 17:18]
user creado
cap:cs:bloques [2018/02/20 09:18] (actual)
Línea 2: Línea 2:
  
 ===== If ===== ===== 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 =====
  
 +''​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.
 +<code csharp>
 +      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;
 +      }
 +</​code>​
 +
 +**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.
 +<code csharp>
 +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;
 +      }
 +   }
 +}
 +</​code>​
 ===== For ===== ===== 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 ====
 +
 +<code csharp>
 +for (inicializador;​ condicion; iterador) { ... }
 +
 +for (inicializador;​ condicion; iterador) ​
 +{
 +   if (condicion_salida) break;
 +}
 +
 +for (inicializador;​ condicion; iterador) ​
 +{
 +   if (condicion_salto) continue;
 +}
 +</​code>​
 +
 +  * **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 ====
 +<code csharp>
 +tipo_de_dato contador = valor_inicial;​
 +
 +int contador = 1000;
 +
 +int contador = 1000;
 +
 +int contador = variable_fin;​
 +</​code>​
 +
 +  * **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 ====
 +<code csharp>
 +contador operador_condicional valor_final;​
 +
 +contador <= 0;
 +
 +contador >= 1000;
 +
 +contador == 100;
 +
 +contador == variable;
 +
 +contador <  1000;
 +
 +contador > 0;
 +</​code>​
 +
 +  * **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 ====
 +<code csharp>
 +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
 +</​code>​
 +
 +  * **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.
 ===== While ===== ===== While =====