jueves, 14 de noviembre de 2019

Unidad 3. Control de Flujo



Índice
Unidad 3.  Control de Flujo
3.1 Estructuras secuenciales.. 2
3.2      Estructuras selectivas:  simple, doble y múltiple.. 3
3.2.1      Simple.. 3
3.2.2      Doble.. 4
3.2.3      Múltiple.. 4
3.3      Estructuras iterativas:  repetir mientras, hasta, desde.. 6
3.3.1      Repetir Mientras.. 6
3.3.2      Hacer-mientras.. 7
3.3.3      Hasta.. 7
3.3.4      Desde Referencias


Tabla de ilustraciones
Ilustración 1 Estructura Secuencial Fuente: Libro de Fundamentos de programación. 3
Ilustración 2 Estructura de selección simple  Fuente: Libro de Fundamentos de programación. 4
Ilustración 3 Estructura de selección doble  Fuente: Libro de Fundamentos de programación. 4
Ilustración 4 Estructura de selección múltiple  Fuente: Libro de Fundamentos de programación. 5
Ilustración 5 Estructura repetitiva  Mientras  Fuente: Libro de Fundamentos de programación. 7
Ilustración 6 Estructura repetitiva  Hasta  Fuente: Libro de Fundamentos de programación. 8
Ilustración 7 Estructura repetitiva  Desde  Fuente: Libro de Fundamentos de programación. 9


Unidad 3.  Control de Flujo

El flujo (orden en que se ejecutan las sentencias de un programa) es secuencial si no se especifica otra cosa. Este tipo de flujo significa que las sentencias se ejecutan en secuencia, una después de otra, en el orden en que se sitúan dentro del programa. Para cambiar esta situación se utilizan las estructuras de selección, repetición y salto que permiten modificar el flujo secuencial del programa. Así, las estructuras de selección se utilizan para seleccionar las sentencias que se han de ejecutar a continuación y las estructuras de repetición (repetitivas o iterativas) se utilizan para repetir un conjunto de sentencias. (Luis Joyanes Aguilar, Luis Rodríguez Baena y Matilde Fernández Azuela, 2003)

Las sentencias de selección son: si («if») y según-sea («switch»); las sentencias de repetición o iterativas son: desde («for»), mientras («while»), hacer-mientras («do-while») o repetir-hasta que («repeat-until»); las sentencias de salto incluyen interrumpir (break), continuar (continue), ir-a (goto), volver (return) y lanzar (trhow). (Luis Joyanes Aguilar, Luis Rodríguez Baena y Matilde Fernández Azuela, 2003)








3.1 Estructuras secuenciales

Una estructura secuencial es aquella en la cual una acción se ejecuta detrás de otra. El flujo del programa coincide con el orden físico en el que se sitúan las instrucciones. (Luis Joyanes Aguilar, Luis Rodríguez Baena y Matilde Fernández Azuela, 2003)


3.2       Estructuras selectivas:  simple, doble y múltiple.


Una estructura selectiva es aquella en que se ejecutan unas acciones u otras según se cumpla o no una determinada condición. La selección puede ser simple, doble o múltiple. (Luis Joyanes Aguilar, Luis Rodríguez Baena y Matilde Fernández Azuela, 2003)

3.2.1 Simple

Se evalúa la condición y si ésta da como resultado verdad se ejecuta una determinada acción o grupo de acciones; en caso contrario se saltan dicho grupo de acciones. (Luis Joyanes Aguilar, Luis Rodríguez Baena y Matilde Fernández Azuela, 2003)


 Representación de la estructura selectiva simple




3.2.2 Doble

Cuando el resultado de evaluar la condición es verdad se ejecutará una determinada acción o grupo de acciones y si el resultado es falso otra acción o grupo de acciones diferentes. (Luis Joyanes Aguilar, Luis Rodríguez Baena y Matilde Fernández Azuela, 2003)




3.2.3 Múltiple

Se ejecutarán unas acciones u otras según el resultado que se obtenga al evaluar una expresión. Aunque la flexibilidad de esta estructura está muy condicionada por el lenguaje, en nuestro pseudocódigo se considera que dicho resultado ha de ser de un tipo ordinal, es decir de un tipo de datos en el que cada uno de los elementos que constituyen el tipo, excepto el primero y el último, tiene un único predecesor y un único sucesor. (Luis Joyanes Aguilar, Luis Rodríguez Baena y Matilde Fernández Azuela, 2003)

Cada grupo de acciones se encontrará ligado con: un valor, varios valores separados por comas, un rango, expresado como valor_inicial…valor_final o una mezcla de valores y rangos. Se ejecutarán únicamente las acciones del primer grupo que, entre los valores a los que está ligado (su lista de valores), cuente con el obtenido al evaluar la expresión. Cuando el valor obtenido al evaluar la expresión no está presente en ninguna lista de valores se ejecutarán las acciones establecidas en la cláusula si_no, si existe dicha cláusula. (Luis Joyanes Aguilar, Luis Rodríguez Baena y Matilde Fernández Azuela, 2003)



3.3       Estructuras iterativas:  repetir mientras, hasta, desde.

Las acciones del cuerpo del bucle se repiten mientras o hasta que se cumpla una determinada condición. Es frecuente el uso de contadores o banderas para controlar un bucle. También se utilizan con esta finalidad los centinelas. (Luis Joyanes Aguilar, Luis Rodríguez Baena y Matilde Fernández Azuela, 2003)

Un centinela es un valor específico predefinido dado a una variable que permite detectar cuándo se desea terminar de repetir las acciones que constituyen el cuerpo del bucle. Por ejemplo, se puede diseñar un bucle que pida el nombre y la nota de una serie de alumnos y establecer que termine cuando se le introduzca un «*» como nombre. Podemos considerar tres tipos básicos de estructuras repetitivas: mientras, hacer-mientras, hasta, desde. (Luis Joyanes Aguilar, Luis Rodríguez Baena y Matilde Fernández Azuela, 2003)

3.3.1  Repetir Mientras

Lo que caracteriza este tipo de estructura es que las acciones del cuerpo del bucle se realizan cuando la condición es cierta. Además, se pregunta por la condición al principio, de donde se deduce que dichas acciones se podrán ejecutar de 0 a n veces. (Luis Joyanes Aguilar, Luis Rodríguez Baena y Matilde Fernández Azuela, 2003)




3.3.2 Hacer-mientras


El bucle hacer-mientras es análogo al bucle mientras desde el punto de vista de que el cuerpo del bucle se ejecuta una y otra vez mientras la condición (expresión booleana) es verdadera. La diferencia entre ellos consiste en que en el bucle hacer-mientras las sentencias del cuerpo se ejecutan, al menos una vez, antes de que se evalúe la expresión booleana. En otras palabras, el cuerpo del bucle siempre se ejecuta, al menos una vez, incluso aunque la expresión booleana sea falsa. Este tipo de bucles típico de C/C++, Java o C#, pero no está presente en todos los lenguajes de programación por lo que será poco usado en nuestros algoritmos. (Luis Joyanes Aguilar, Luis Rodríguez Baena y Matilde Fernández Azuela, 2003)


3.3.3 Hasta

Las acciones del interior del bucle se ejecutan una vez y continúan repitiéndose mientras que la condición sea falsa. Se interroga por la condición al final del bucle. (Luis Joyanes Aguilar, Luis Rodríguez Baena y Matilde Fernández Azuela, 2003)



3.3.4 Desde


Se utiliza cuando se conoce, con anterioridad a que empiece a ejecutarse el bucle, el número de veces que se va a iterar.
La estructura desde comienza con un valor inicial de la variable índice y las acciones especificadas se ejecutan a menos que el valor inicial sea mayor que el valor final. La variable índice se incrementa en 1, o en el valor que especifiquemos, y si este nuevo valor no excede al final se ejecutan de nuevo las acciones.
Si establecemos que la variable índice se decremente en cada iteración el valor inicial deberá ser superior al final. Consideramos siempre la variable índice de tipo entero. (Luis Joyanes Aguilar, Luis Rodríguez Baena y Matilde Fernández Azuela, 2003)
Es posible sustituir una estructura desde por otra de tipo mientras controlada por un contador. (Luis Joyanes Aguilar, Luis Rodríguez Baena y Matilde Fernández Azuela, 2003)



Referencias


Luis Joyanes Aguilar, Luis Rodríguez Baena y Matilde Fernández Azuela. (2003). Fundamentos de programación (Segunda EdiciÛn ed., Vol. 1). (C. F. Madrid, Ed.) Madrid, Madrid, España: Universidad Pontificia de Salamanca. Recuperado el 23 de Octubre de 2019, de https://s3.amazonaws.com/academia.edu.documents/58205287/Libro_de_Problemas_Fundamentos_de_Programacion__2da_Edicion_-_Luis_Joyanes_Aguilar.pdf?response-content-disposition=inline%3B%20filename%3DLibro_de_Problemas_Fundamentos_de_Progra.pdf&X-Amz-Algorith





No hay comentarios.:

Publicar un comentario