Developer's Diary

7 agosto, 2010

Curso C# – Estructuras de control

Filed under: .net, Curso C#, Programación — 3nk1 @ 4:24 PM

Esta es la cuarta entrega del curso de C#. En ella vamos a ver en mayor profundidad las estructuras de control.

Aunque ya hemos visto en los ejercicios anteriores alguna de las estructuras de control, en esta ocasión la vamos a ver con mayor tranquilidad.

Mediante una estructura de control, podemos crear variaciones en nuestro código, permitiendo realizar la ejecución de un fragmento del mismo o dejándolo pasar.

Por ejemplo, realizar una función, cuando un valor valga cinco o superior a cinco.

Una estructura de control nos permite hacer una comprobación sobre un valor. Ya sea un valor lógico (verdadero o falso) , un valor numérico o un objeto.

Existen dos tipos de estructuras de control principales que codificadas en C# serían las siguientes:

IF y SWITCH.

IF

La estructura de control IF, que se traduciría como SI, nos permite comparar una sentencia que siempre devuelve Verdadero o Falso.  Mediante una estructura de este tipo siempre devolverá un valor lógico.

Por ejemplo:

Entramos en una sentencia de código, si el valor de un entero es mayor o igual de cinco.  En caso de que el valor sea menor de cinco, nos devolverá un valor falso y en caso contrario uno verdadero.

If (entero >= 5)

{

//realizar código

}

Comprobamos una fecha, si está es mayor al día de hoy,  devuelve true si es menor devuelve false.

If(fecha > hoy)

{

//realizamos código.

}

Esta es la sentencia condicional básica, podemos introducir una segunda vía en caso de que el valor sea false, para ello, usaremos la palabra reservada else.

Volvamos al ejemplo anterior del número entero, supongamos que si es menor incrementamos un valor.

If (entero >= 5)

{

//realizamos codigo

}

else

{

entero++;

}

Las llaves pueden ser omitidas, en caso de que solo hagamos una sentencia dentro de nuestra condición. No obstante, para un correcto entendimiento del código, lo más razonable es el uso de las llaves en todo momento. Ya hablaré de eso en un apartado de Etiqueta en el código.

Finalmente, podemos introducir también las directiva elseif.

Mediante esta última condición, podemos incluir nuevas condiciones si la primera no se ha cumplido. Volvamos al ejemplo del número entero, en este caso, realizaremos otra sentencia, si el valor es mayor o igual a tres, finalmente incrementaremos el valor si no cumple ninguna de estas dos condiciones.

El ejemplo quedaría así:

If( entero  >= 5)

{

//código

}

else if  ( entero >= 3)

{

//realizar código.

}

else

{

entero++;

}

Estas son las posibilidades que nos permite la estructura de control condicional. Pero ahora vamos con la segunda estructura de control, que se trata de Switch

SWITCH

Mediante Switch, podemos comparar un valor y realizar diferentes sentencias, dependiendo de ese valor. En este caso no debe de ser de tipo lógico. Si no debe ser un número entero. Veamos este tipo de sentencia.

Para este ejemplo, realizaremos una comprobación con el número entero del uno al tres. Y crearemos un MessageBox con la frase, “El número elegido es: ” y el valor del número. Para la estructura de control Switch, tenemos la palabra reservada Case Que nos permite comprobar el valor actual y también tenemos las palabras reservadas default, que es la sentencia que se realiza en caso de que no controlemos dentro de la estructura el valor que hemos aceptado.  Finalmente debemos poner la palabra reservada break, que será la que termine con las sentencias para ese valor.

Switch(Entero)

Case 0:

MessageBox.Show(“Ha introducido el valor cero”);

break;

Case 1:

MessageBox.Show(“Ha introducido el valor uno”);

break;

Case 2:

MessageBox.Show(“Ha introducido el valor dos”);

break;

Default:

MessageBox.Show(“No se reconoce el valor introducido”);

break;

Anidación de estructuras.

En ocasiones, debemos realizar comprobaciones, dentro de comprobaciones. Esto es muy frecuente en cualquier aplicación. El uso de la anidación es tan simple, como introducir una nueva estructura de control, dentro de otra. Aún así, el abuso de estructura de control, ralentiza la aplicación. Esto se debe a que la aplicación no fluye correctamente, si no que se deben hacer comprobaciones en más de una ocasión.

Estas son los dos tipos de estructura de control que podemos realizar desde C#, además de que se incluyen en casi todos los lenguajes de programación. No se requiere ninguno más, debido a que la potencia que nos facilita es suficiente. Mediante la sentencia If, podemos controlar tanto errores, como valores que estemos comprobando para ejecutarlos. +

La sentencia Switch, nos permite comparar distintos valores introducidos, para por ejemplo, enviar diferentes mensajes, para comparar valores.

Para esta ocasión, vamos a hacer el siguiente ejercicio propuesto. Este podeis realizarlo como aplicación en consola, como en ventana. Como más os guste. Simplemente debereis, permitir introducir el valor, en caso de que el valor sea menor de cinco, por ejemplo. Accederá a un switch que nos escribirá por pantalla el valor, en caso de que sea superior, nos indicará que el valor es superior al permitido.

Aunque podemos realizar este ejercicio, con una sola estructura de control y sería lo más eficiente. Ya que cuanto menos uso y anidación de estructuras de control, más eficiente es nuestra aplicación. Vamos a obviar este detalle y vamos a escribir nuestro código usando las dos estructuras.

Anuncios

1 comentario »

  1. […] desarrollo. – Nuestra primera aplicación de consola. – Nuestra primera aplicación de ventana. – Estructuras de control. – Estructuras de repetición. – Manejo de los controles básicos I , II , III. – Varios […]

    Pingback por Curso C# « Developer's Diary — 3 enero, 2011 @ 7:30 AM


RSS feed for comments on this post. TrackBack URI

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

A %d blogueros les gusta esto: