ESTRUCTURAS DE CONTROL
Introducción
Estructurar el control de un conjunto de acciones, detalladas en un algoritmo, es brindar mecanismos que permitan indicar el orden en que las mismas van a ser llevadas a cabo.
Una de las mayores potencias de un procesador proviene de su capacidad de tomar decisiones y de determinar qué acción realizar al momento de ejecutar un algoritmo, sobre la base de los valores de algunos de los datos que se leen o bien, de los resultado de los cálculos que se realizan.
Vamos a explicar ahora tres conceptos muy importantes, como son las estructuras de control:
· Secuencial
· Condicional
· Repetición
Que en general no modifican el ambiente sino el orden en que el procesador ejecuta las acciones primitivas.
La Estructura de Control Secuencial.
Cuando no se indique lo contrario el flujo de control de ejecución de un algoritmo seguirá la secuencia implícita del mismo. Entendemos por secuencia implícita, que las acciones se ejecutan en el orden en que son escritas en el algoritmo, es decir desde la primera hacia la última (“desde arriba hacia abajo”). Al terminar de ejecutarse una acción se pasa a la inmediata siguiente que esta perfectamente determinada y, así siguiendo, hasta alcanzar la última acción del algoritmo. Por ejemplo
NUMERO ←1
I ← 1
LEER NUMERO
La Estructura de Control Condicional
Estructuras Condicionales En un algoritmo se tiene una lista de enunciados o instrucciones que se van ejecutando a medida que se van interpretando secuencialmente. Sin embargo, en ocasiones nos interesa controlar el flujo de la ejecución estableciendo alternativas, es decir, que una serie de enunciados se ejecuten en algunas ocasiones y en otras no. Para permitir esto existen las estructuras condicionales.
No todos los problemas pueden resolverse empleando estructuras secuenciales. Cuando hay que tomar una decisión aparecen las estructuras condicionales.
En nuestra vida diaria se nos presentan situaciones donde debemos decidir.
¿Elijo la carrera A o la carrera B?
¿Me pongo este pantalón?
Para ir al trabajo, ¿elijo el camino A o el camino B?
Al cursar una carrera, ¿elijo el turno mañana, tarde o noche?
Por supuesto que en un problema se combinan estructuras secuenciales y condicionales. Las estructuras condicionales comparan una variable contra otro(s) valor(es), para que en base al resultado de esta comparación, se siga un curso de acción dentro del programa. Cabe mencionar que la comparación se puede hacer contra otra variable o contra una constante, según se necesite. Existen tres tipos básicos, las simples, las dobles y las múltiples.
Selección simple o condicional
Es una estructura de control que permite ejecutar un grupo de acciones dependiendo de alguna condición lógica. Las estructuras de control permiten controlar el flujo del programa para determinar cuáles acciones se ejecutan y cuáles no. En este tipo de estructura se ejecutan un conjunto de acciones si y sólo si, se cumple o se hace verdadera la condición.
La notación que usaremos es:
Si entonces ... finsi
Ejemplo
n <- 7
Si n > 0 Entonces
n <- n -1
Fin Si
Escribir "El valor de n es: ",n
La representación gráfica a través de un diagrama de flujo es la siguiente:
Selección doble o condicional doble (condicional con alternativa verdadera y falsa)
La estructura selectiva simple es muy fácil de usar y muy común pero en ocasiones tenemos necesidad de decirle al programa para, si no se cumple una condición que nos realice una determinada tarea y si se cumple nos haga otra. El punto principal de esta estructura es que es posible también indicar que acciones llevar a cabo en caso de que la condición sea falsa.
La notación que usaremos es:
Si entonces ... sino ...finsi
Ejemplo
a <- 13
b <- 7
Si a < b Entonces
Escribir a ,"es menor que: ",b
SiNo
Escribir b ,"es menor que: " ,a
Fin Si
La representación gráfica a través de un diagrama de flujo es la siguiente:
Selección Múltiple
Es una estructura de control, que se utiliza en problemas donde es necesario realizar un análisis por casos, es decir, permite tratar problemas donde las acciones a tomar dependan de la evaluación de ciertas condiciones. La notación que vamos a utilizar, es la siguiente:
Segun … Hacer …. Fin Segun
ejemplo
n <- 3
Segun n Hacer
3:
Escribir "Vale 3"
7:
Escribir "Vale 7"
5:
Escribir "Vale 6"
De Otro Modo:
Escribir "Vale otro valor"
Fin Según
De esta forma es posible plantear varias condiciones distintas. Es necesario que uno sola de los posibles condiciones puede satisfacerse en un momento, y deben contemplarse todos los casos posibles.
La representación gráfica a través de un diagrama de flujo es la siguiente: