Diseño estructurado de algoritmos - UNID · Diseño estructurado de algoritmos Sesión 11:...

14
Diseño estructurado de algoritmos Sesión 11: Estructuras Algorítmicas

Transcript of Diseño estructurado de algoritmos - UNID · Diseño estructurado de algoritmos Sesión 11:...

Page 1: Diseño estructurado de algoritmos - UNID · Diseño estructurado de algoritmos Sesión 11: Estructuras Algorítmicas. Contextualización ¿Qué estructuras permiten que exista un

Diseño estructurado de

algoritmos

Sesión 11: Estructuras Algorítmicas

Page 2: Diseño estructurado de algoritmos - UNID · Diseño estructurado de algoritmos Sesión 11: Estructuras Algorítmicas. Contextualización ¿Qué estructuras permiten que exista un

Contextualización ¿Qué estructuras permiten que exista un

control en el programa?

Es muy extenso el tema cuando se habla de estructuras algorítmicas, porque el hombre con el afán

de resolver toda clase de problemas, se dio a la tarea de buscar formas de trabajo que pudieran ser

manejadas por todo tipo de persona que tuviera interés en el mundo de la programación.

Al conjunto de formas de trabajo que permiten el manejo de variables para la realización de

procesos con los que se pueda llegar a la solución de problemas los denomino estructuras. El

hecho de que se crearan las estructuras fue para estandarizar, lo que se pretendía era que un

programa pudiera ser entendido fácilmente por cualquier tipo de persona, no solo por su creador.

Page 3: Diseño estructurado de algoritmos - UNID · Diseño estructurado de algoritmos Sesión 11: Estructuras Algorítmicas. Contextualización ¿Qué estructuras permiten que exista un

Contextualización

Cada tipo de estructura cubre una necesidad en específico, según el problema planteado. Las que hemos

revisado hasta el momento son:

Estructura secuencial

Estructura condicional

Estructura Repetitiva

Estas estructuras se aplican según la función de cada programa, son diseñadas para resolver desde

problemas menores, hasta los más complejos que requieren el control de alternativas.

Page 4: Diseño estructurado de algoritmos - UNID · Diseño estructurado de algoritmos Sesión 11: Estructuras Algorítmicas. Contextualización ¿Qué estructuras permiten que exista un

Introducción ¿Cómo te imaginas que se aplican los

ciclos en un programa?

En esta sesión la estructura que se abordará a profundidad es la

repetitiva.

Como recordaremos la estructura repetitiva es aquella que permite que

se ejecute una serie de acciones un número finito de veces.

En este tipo de estructuras el programador tiene el control, porque al

colocar adecuadamente una condición lógica le podrá indicar al

programa cuantas veces pueda ejecutar una instrucción.

Page 5: Diseño estructurado de algoritmos - UNID · Diseño estructurado de algoritmos Sesión 11: Estructuras Algorítmicas. Contextualización ¿Qué estructuras permiten que exista un

Introducción

Mediante el lenguaje de programación se manejan distintas formas en las que

se consigue que un grupo de instrucciones realice repeticiones, a estas formas

se les denomina “Ciclos”. Los ciclos son sentencias de código que permiten un

ahorro de tiempo al momento de programar, una mayor claridad, reduce el

tamaño del programa y evita problemas si se desean hacer modificaciones.

Estas sentencias de repetición se desprenden de la estructura repetitiva y se

clasifican en 3

• Ciclo para

• Ciclo mientras

• Ciclo hacer

Page 6: Diseño estructurado de algoritmos - UNID · Diseño estructurado de algoritmos Sesión 11: Estructuras Algorítmicas. Contextualización ¿Qué estructuras permiten que exista un

Estructuras Algorítmicas ¿Qué es iterar?

Uno de los conceptos que se maneja en programación es

la denominada iteración, un verbo utilizado como sinónimo

de repetir que expresa el proceso de la estructura

repetitiva.

Los ciclos son sentencias que le brindan control a un

programa al momento de realizar iteraciones.

Page 7: Diseño estructurado de algoritmos - UNID · Diseño estructurado de algoritmos Sesión 11: Estructuras Algorítmicas. Contextualización ¿Qué estructuras permiten que exista un

1.- Ciclo para

Este ciclo se encarga de controlar la ejecución de un bloque de instrucciones, el número

de veces que se ejecuta se determina por los valores enteros que toma la variable

contadora en un rango establecido por el programador.

Después de que realiza el proceso de ejecución en cada iteración, la variable se

incrementa en 1 automáticamente con la condición de que en el momento en que la

variable pasa el límite el ciclo se rompe.

La ejecución de los ciclos depende mucho del lenguaje de programación utilizado, por

ejemplo en el ciclo para la variable final varia, por eso no es recomendable utilizar el valor

de la variable contadora después de ejecutar el algoritmo.

Page 8: Diseño estructurado de algoritmos - UNID · Diseño estructurado de algoritmos Sesión 11: Estructuras Algorítmicas. Contextualización ¿Qué estructuras permiten que exista un

1.- Ciclo para

Donde var es la variable contadora del ciclo, lim_inf es el valor inicial que toma la variable contadora.

lim_sup es el valor final, cuando este valor sea superado por la variable contadora el ciclo se acabó.

El denominado bloque de instrucciones es el conjunto de acciones que se ejecutan en cada repetición.

var=lim_inf

var=var+1

var<=lim_sup

Bloque de

Instrucciones

SALIDA

ENTRADA

Page 9: Diseño estructurado de algoritmos - UNID · Diseño estructurado de algoritmos Sesión 11: Estructuras Algorítmicas. Contextualización ¿Qué estructuras permiten que exista un

2.- Ciclo mientras:

El término mientras en un lenguaje de programación permite ejecutar un bloque de instrucciones,

siempre y cuando una condición o expresión lógica se cumpla, mientras sea verdadero.

La condición siempre es evaluada desde el comienzo, antes de ejecutar el bloque de instrucciones. Si

la condición se cumple se ejecuta, pues todo ciclo vuelve a comenzar. Cuando la condición no se

cumple simplemente se termina el proceso, no se ejecuta.

La forma general del ciclo es:

CONDICIÒN

BLOQUE

ENTRADA

FIN

Page 10: Diseño estructurado de algoritmos - UNID · Diseño estructurado de algoritmos Sesión 11: Estructuras Algorítmicas. Contextualización ¿Qué estructuras permiten que exista un

Este ciclo es similar al ciclo mientras, la única diferencia es que la evaluación de la condición es diferente,

porque en el ciclo mientras la condición es evaluada desde el inicio, en el ciclo hacer la condición se toma

en cuenta después de ejecutar el bloque de instrucciones por lo menos una vez.

Para que el bloque se ejecute nuevamente, la condición debe ser siempre verdadera, cuando resulta

falso se termina el proceso.

¿Qué crees que realiza el ciclo

hacer?

3.-Ciclo hacer:

CONDICIÒN

BLOQUE

ENTRADA

FIN

Donde BLOQUE es el conjunto de

instrucciones que se ejecutan por lo

menos una vez antes de la condición

Page 11: Diseño estructurado de algoritmos - UNID · Diseño estructurado de algoritmos Sesión 11: Estructuras Algorítmicas. Contextualización ¿Qué estructuras permiten que exista un

Conclusión

Al momento de diseñar un algoritmo que contiene iteraciones, es importante conocer los tipos de

sentencias que permiten controlar las repeticiones generadas en un algoritmo.

La ejecución de los ciclos depende mucho del lenguaje de programación utilizado, pero la estructura ya

está definida porque el objetivo para el que los crearon fue para un fácil diseño, una sencilla depuración

y son adaptados para que sean entendidos por personas diferentes a las que escribieron el programa.

Es importante saber distinguir las diferentes estructuras de repetición utilizadas en problemas con ciclos:

• Hacer

• Mientras

• Para

Debemos analizar las diferencias entre cada una de las estructuras de repetición para que podamos

construir grandes y complejos problemas a través de la ejecución repetida.

Page 12: Diseño estructurado de algoritmos - UNID · Diseño estructurado de algoritmos Sesión 11: Estructuras Algorítmicas. Contextualización ¿Qué estructuras permiten que exista un

Para aprender más ¿Sabes cuáles son los elementos de una estructura repetitiva?

Entrenamiento a la medida .2012.Elemetos de una estructura repetitiva. Consultado el 25 de Marzo

del 2013 de: http://www.youtube.com/watch?v=rkXgw1LzNlE

Por medio de este enlace reforzaras los temas de esta sesión por medio de definiciones y ejemplos

aplicados a la programación.

Licdo. Wladimir Chirinos.2011.Estructuras Repetitivas. Consultado el 25 de Marzo del 2013, de

http://es.slideshare.net/wladimirclipper/estructuras-repetitivas

Para aprender más

Page 13: Diseño estructurado de algoritmos - UNID · Diseño estructurado de algoritmos Sesión 11: Estructuras Algorítmicas. Contextualización ¿Qué estructuras permiten que exista un

Referencias

Rodríguez Ruiz Ricardp.2006. Elementos de la Programación Estructurada: Algoritmos, Pseudocódigo y Diagramas de

Flujo pp. 5-7. Consultado el 25 de Marzo de 2013, de: http://www.utm.mx/~rruiz/cursos/PE/notas.pdf

Licdo. Wladimir Chirinos.2011.Estructuras Repetitivas. Consultado el 25 de Marzo de 2013, de

http://es.slideshare.net/wladimirclipper/estructuras-repetitivas

Lucia Santeramo. 2012. Estructuras repetitivas, Bucles de control. Consultado el 25 de Marzo del 2013, de:

http://www.aliatuniversidades.com.mx/bibliotecasdigitales/pdf/sistemas/Analisis_y_disenio_de_algoritmos.pdf

Tecnológico de Monterrey. Campus Cuernavaca. Introducción a la computación. Estructuras de control. Consultado el 25

de Marzo del 2013, de, http://www.itescam.edu.mx/principal/sylabus/fpdb/recursos/r88070.PDF

Page 14: Diseño estructurado de algoritmos - UNID · Diseño estructurado de algoritmos Sesión 11: Estructuras Algorítmicas. Contextualización ¿Qué estructuras permiten que exista un