sábado, 21 de julio de 2012

Estructuras en los algoritmos

Ya mencionamos que los algoritmos cuentan con ciertas estructuras que pueden ser implementadas para la resolución de nuestro problema. La primera de ellas que estudiaremos es la estructura condicional.

Estructura condicional

Esta es una instrucción o grupo de instrucciones que pueden o no ejecutarse dependiendo de que se cumpla una condición. Es decir si un evento sucede se ejecuta la instrucción, de lo contrario si este evento no sucede no se ejecutara la instrucción. De otro punto de vista, una estructura condicional compara una variable contra un valor establecido y en base al resultado el programa toma un curso.

Estructura condicional simple 

Esta es el tipo mas sencillo, a menudo se le nombra como toma de decisión, dentro del flujo del programa hay un punto en el puede llegar a una estructura de este tipo. el valor en que se ha trabajado llega a el rombo que indica la condición a evaluar y de este se puede obtener una respuesta verdadera; osea donde la condición se cumple; o una respuesta falsa. 


La estructura puede ejemplificarse con el siguiente diagrama de flujo.


Retomando el ejemplo anterior de un algoritmo para ponerse un zapato, podemos aplicar esta estructura para definir en que pie se debe poner; izquierdo o derecho. Podemos plantear la siguiente solución:
  1. ¿Las agujetas están desamarradas?
    1. Si: Haz un nudo.
    2. No: Continua
Este fragmento puede agregarse a algoritmo de colocarse un par de zapatos. Como se puede ver esta estructura solo plantea un proceso para una sola opción; en el ejemplo se aplica cuando la opción es verdadera, pero en términos generales la opción puede aplicarse si la opción es falsa, todo depende de la lógica que aplicamos en la solución. Siendo así podemos plantear el siguiente fragmento y seria válido igual:
  1. ¿Las agujetas están atadas?
    1. Si: Continua
    2. No: Átalas 
Aunque se aplica un criterio de validación el resultado obtenido es el mismo.

Estructura condicional doble

Las estructuras dobles al igual que las sencillas permiten hacer una evaluación de la cual tenemos dos posibles resultados; verdadero y falso, si o no; pero a cada una le da un camino diferente. Esta estructura puede ejemplificarse en el siguiente diagrama de flujo:


Siguiendo con el ejemplo se puede plantear el siguiente algoritmo:

  1. Tomar un zapato
    1. ¿El zapato es derecho?
      1. Si: Colocar el zapato en el pie derecho
      2. No: Colocar el zapato en pie izquierdo

Como se menciono el algoritmo puede cumplir una y solo una de las dos opciones y de acuerdo a cual tome se plantea una solución diferente.

Faltan dos estructuras condiciones más que analizaremos en el siguiente post. 

No hay comentarios:

Publicar un comentario