1. ESCUELA SUPERIOR POLITECNICA DE
CHIMBORAZO
FACULTAD DE INFORMÁTICA Y ELECTRONICA
ESCUELA DE INGENIRÍA EN DISEÑO GRAFICO
Programación I
TEMA:
ESTRUCTURAS ITERATIVAS
INTEGRANTES:
Pilar Duchi
Anita Llerena
Juan Pablo Machado
Ivonne Condo
Oswaldo Ruiz
Katherine Granizo
SEMESTRE:
Quinto
RIOBAMBA – ECUADOR
2011
2. INTRODUCCIÓN
En la programación existen las estructuras básicas y fundamentales de un algoritmo,
ahora mediante las estructuras condicionales somos capaces de definir q expresión es la
más adecuada según se presente el problema, pero cuando se necesita repetir varias
veces un proceso no son suficientes, para ello son las estructuras iterativas capaces de
enunciar procesos mas complicados y definidos para redundar mientras cumpla o no una
condición.
En este documento se detalla cómo se lleva a cabo la ejecución iterativa de las
expresiones en función del valor de las condiciones de control.
OBJETIVOS
Se va a estudiar el uso de las sentencias de control iterativas, para desarrollar programas
usando estas sentencias, en base a la definición concreta de sus funciones a partir de
ejemplos específicos.
Sentencia for
Pág. 2
Sentencia while (Mientras)
Sentencia do… until (Repetir… hasta)
Sentencias iterativas anidadas.
Estructuras Selectivas
3. ESTRUCTURAS DE CONTROL / ITERATIVAS
Las estructuras iterativas de control o de repetición, también llamadas bucles, porque
gracias a estas sentencias nos permite repetir una instrucción el número de veces
necesarias hasta cumplir con una condición.
A menudo es necesario ejecutar una instrucción o conjunto de instrucciones más de una
vez, se podría escribir un programa en el que se repita el código el cual se ejecute varias
veces, pero:
El programa nos resultaría muy largo.
La mayoría del código estaría duplicado, lo que en caso de alguna modificación
dificultaría su mantenimiento.
El programa se podría repetir las veces que se define dentro del programa y no
en función de requerimientos del usuario.
Todo bucle consta de tres partes básicas:
Decisión: donde se evalúa la condición y, en caso de ser cierta, se ejecuta el
Pág. 3
cuerpo del bucle.
Cuerpo del bucle: son las instrucciones que se ejecutaran repetidamente, un
número determinado de veces, cuando la decisión es verdadera.
Salida del bucle: es la condición que indica cuando terminan las iteraciones.
Cada instrucción o conjunto de instrucciones de un bucle se define como Iteración.
Una forma de controlar un bucle es mediante una variable llamada contador cuyo valor
se incrementa o decrementa en una cantidad constante en cada repetición que se
produzca. También, los bucles suelen utilizar otro tipo de variables llamadas
acumulador, cuya misión es almacenar una cantidad variable resultante de operaciones
sucesivas y repetidas. Es como un contador, con la diferencia que el
Estructuras Selectivas
incremento/decremento es variable.
Las estructuras de control se dividen en:
Sentencia for
Sentencia while (Mientras)
Sentencia do… until (Repetir… hasta)
Sentencias iterativas anidadas.
4. Sentencia for
A menudo conocemos de antemano cuántas veces se deben repetir ciertas instrucciones
dentro de un programa, para ello se usa el bucle for que es aquel que permite repetir un
conjunto de expresiones un número determinado de veces, con la peculiaridad que la
instrucción incrementa (o decrementa), automáticamente y de uno en uno, la variable
que se utiliza como contador. La sintaxis básica es:
Instrucciones
Instrucciones
Pág. 4
Representación en diagrama de flujo
Estructuras Selectivas
El incremento es opcional. Si no se coloca, el bucle aumenta de uno en uno de ‘forma
automática’ el valor del contador. Si se desea decrementar la variable es necesario
colocar el valor del decremento (-1)
Ejemplo1:
Dado un número entero N, calcular la suma de los números entre 1 y N.
5. INICIO
LEER (N)
SUMA=0
DESDE I=1:N
SUMA=SUMA+N
FIN DESDE
MOSTRAR SUMA
FIN
Ejemplo2:
Dado un número entero N, calcular la tabla de multiplicar hasta el 12 del número N
ingresado.
INICIO
Pág. 5
LEER (N)
DESDE I=1:12
MULT= I*N
MOSTRAR MULT
FIN DESDE
FIN
Estructuras Selectivas
Se observa que el contador siempre se inicializa automáticamente en el valor inicial
indicado en la estructura.
Sentencia Mientras (while)
En este tipo de estructura, el cuerpo del bucle se repite MIENTRAS se cumpla una
determinada condición.
6. La sintaxis básica es:
( )
Instrucciones
Representación en diagrama de flujo
Pág. 6
Ejemplo:
Dado un número entero N, calcular la suma de los números entre 1 y N.
INICIO
LEER (N)
I=1
SUMA=0
Estructuras Selectivas
MIENTRAS (I≤N)
SUMA=SUMA+I;
I=I+1;
FINMIENTRAS
MOSTRAR SUMA
7. FIN
Ejemplo2:
Dado un número entero N, calcular la tabla de multiplicar hasta el 12 del número N
ingresado.
INICIO
LEER (N)
I=1
MIENTRAS (I≤N)
MULT=I *N
I=I+1
MOSTRAR MULT
FINMIENTRAS
FIN
Pág. 7
Como podemos observar en los dos ejemplos q en esta estructura se necesita de un
contador o acumulador para poder determinar en qué momento se cumple la condición y
sale del bucle.
Sentencia Repetir – hasta (do… until)
En la estructura while las expresiones del cuerpo tan solo se ejecutan si la expresión
condicional es cierta. En la estructura do-until las expresiones del cuerpo se ejecutan por
Estructuras Selectivas
lo menos una vez ya que la condición se encuentra a la salida del bucle y estas
instrucciones se ejecutar por falso es decir que se realizan hasta que la condición se
cumpla.
La sintaxis básica es:
Instrucciones
( )
8. Representación en diagrama de flujo
Ejemplo:
Pág. 8
Dado un número entero N, calcular la suma de los números entre 1 y N.
INICIO
LEER (N)
I=1
SUMA=0
REPETIR
SUMA=SUMA+I;
Estructuras Selectivas
I=I+1;
HASTA (I=N)
MOSTRAR SUMA
FIN
9. Ejemplo2:
Dado un número entero N, calcular la tabla de multiplicar hasta el 12 del número N
ingresado.
INICIO
LEER (N)
I=1
REPETIR
MULT=I *N
I=I+1
MOSTRAR MULT
HASTA (I=12)
FIN
Pág. 9
Igual que en la estructura while, esta estructura necesita de un contador que permita
identificar el momento en que se cumpla la condición y salga de bucle.
Sentencias / Bucles Anidados
Es posible construir un programa donde se aniden los bucles; esto es, ejecutar un bucle
dentro de otro, siempre que el bucle interno este totalmente contenido dentro del bucle
externo, si no, el algoritmo no es válido.
Estructuras Selectivas
El caso típico de bucle anidado es la asignación de valores a una matriz. Supongamos
que se desea leer los valores de una matriz de orden min. (m y n dados por el usuario).
El pseudocódigo que resuelve el planteamiento es:
10. INICIO
REPETIR
LEER(m; n)
HASTA QUE ((m > 0) & (n > 0))
DESDE i = 1 : m HACER
DESDE j = 1 : n HACER
LEER A(i; j) Bucle Interno
FINDESDE –j
FINDESDE –i
FIN
Para entender este ejemplo se realiza la prueba de escritorio, para una matris de 2 filas
por 3 columnas.
Pág. 10
m=2
n=3
Para (i,j) (1,1) Ingreso 5 Para (i,j) (2,1) Ingreso 7 Para (i,j) (3,1) Ingreso 8
Para (i,j) (1,2) Ingreso 3 Para (i,j) (2,2) Ingreso 6 Para (i,j) (3,2) Ingreso 1
Finalmente se mostraría de la siguiente manera:
5 7 8
3 6 1
Estructuras Selectivas
11. CONCLUSIONES:
Las Estructuras Iterativas son aquellas que facilitan el proceso de desarrollo de
un programa al permitir repetir una instrucción o bloque de instrucciones hasta
que cumpla una condición.
En caso de no usar una estructura iterativa, el código se agrandaría debido a que
el código se duplicará y por ende es más difícil de modificar, además de que el
número de veces que se repitan estas instrucciones es limitada por el programa.
Todas las sentencias de repetición necesitan de un contador o acumulador. El
contador es aquel que se incrementa o decrementa en un valor constante mientas
que el acumulador en un valor variable.
En la sentencia for el acumulador se incrementa automáticamente, en la
sentencia while y repeat el acumulador se incrementa dentro del cuerpo del
bucle.
La sentencia for se ejecuta un número indicado de veces, la sentencia while se
ejecuta las instrucciones cuando la condición es verdadera y la sentencia repeat
se ejecuta el cuerpo del bucle cuando la condición es falsa.
Pág. 11
BIBLIOGRAFIA:
http://www.mailxmail.com/curso-aprende-programar/estructuras-iterativas-
estructura-mientras
http://elvex.ugr.es/decsai/java/pdf/5C-iterative.pdf
http://usuarios.multimania.es/dhascome/practicas/ProgC/Cap4.pdf
http://prof.usb.ve/mvillasa/compcient/estructuras.pdf
Estructuras Selectivas