Los programas de modo secuencial, se ejecutan una sentencia después de otra. La ejecución comienza con la primera sentencia y prosigue hasta la Última sentencia, cada una de las cuales se ejecuta una sola vez. Esta forma de programación es adecuada para resolver problemas sencillos. Sin embargo, para la resolución de problemas de tipo general se necesita la capacidad de controlar cuáles son las sentencias que se ejecutan, en qué momentos. Las estructuras o construcciones de control controlan la secuencia o flujo de ejecución de las sentencias. Las estructuras de control se dividen en tres grandes categorías en función del flujo de ejecución: secuencia, selección y repetición. En este apartado se considera las estructuras selectivas o condicionales. Estructuras de control Las estructuras de control controlan el flujo de ejecución de un programa o función. Las estructuras de control permiten combinar instrucciones o sentencias individuales en una simple unidad lógica con un punto de entrada y un punto de salida. La Sentencia Si o if La estructura de control de selección principal es una sentencia "Si" (if). La sentencia "Si" tiene dos alternativas o formatos posibles. El formato más sencillo tiene la sintaxis siguiente:
La sentencia if o si funciona de la siguiente manera. Cuando se alcanza la sentencia if dentro de un programa, se evalúa la expresión entre paréntesis que viene a continuación de if. Si Expresión es verdadera, se ejecuta Acción; en caso contrario no se ejecuta Acción (en su formato más simple, Acción es una sentencia simple y en los restantes formatos es una sentencia compuesta). En cualquier caso la ejecución del programa continúa con la siguiente sentencia del programa. Sentencia if o si de dos alternativas if-else Un segundo formato de la sentencia if es la sentencia if-else, Esta formato de la sentencia If tiene la siguiente sintaxis: if (Expresion) then Acción1 else Acción2 Expresión: Expresión lógica que determina la acción a ejecutar Acción1: Acción que se realiza si la expresión lógica es verdadera Acción2: Acción que se ejecuta si la expresión lógica es falsa Acción 1 y 2 son sentencias individuales o compuestas Sentencia if-else Anidadas Hasta este punto, las sentencias if implementan decisiones que implican una o dos alternativas. En esta sección, se mostrará como se puede utilizar la sentencia if para implementar decisiones que impliquen diferentes alternativas. Una sentencia if es anidada cuando la sentencia de la rama verdadera o la rama falsa, es a su vez una sentencia if. Una sentencia if anidada se puede utilizar para implementar decisiones con varias alternativas o multi-alternativas. Sintaxis
Ejemplo: Incrementar contadores de números positivos, números negativos o ceros. Formato 1 Si (x>0) entonces numpos=numpos+1 caso contrario si (x<0) entonces numneg=numneg+1 caso contrario numcero=numcero+1 Formato 2 Si (x>0) entonces numpos=numpos+1 caso contrario si (x<0) entonces numneg=numneg+1 caso contrario numceros=numceros+1 La sentencia if anidada tiene tres alternativas. Se incrementa una de las tres variables (numpos,numneg y numceros) en 1, dependiendo de que x sea mayor que cero, menor que cero o igual a cero, respectivamente. Las cajas muestran la estructura lógica de la sentencia if anidada; la segunda sentencia if es la acción o tarea falsa (a continuación de else) de la primera sentencia if. La ejecución de la sentencia if anidada se realiza como sigue: se comprueba la primera condición (x > O); si es verdadera, numpos se incrementa en 1 y se salta el resto de la sentencia if. Si la primera condición es falsa, se comprueba la segunda condición (x < O); si es verdadera numneg se incrementa en uno; en caso contrario se incrementa nunceros en uno. Es importante considerar que la segunda condición se comprueba sólo si la primera condición es falsa. |
DOCENCIA UNIVERSITARIA > Fundamentos de Programación > Desarrollo de Fundamentos de Programación >