0% encontró este documento útil (0 votos)
23 vistas13 páginas

Estructuras de Iteración en Programación

El documento describe diferentes estructuras de iteración para repetir bloques de código un número determinado de veces o mientras se cumpla una condición. Incluye ejemplos de uso de contadores, acumuladores, búsqueda de máximos y mínimos, y anidamiento de ciclos.

Cargado por

matydla14
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
23 vistas13 páginas

Estructuras de Iteración en Programación

El documento describe diferentes estructuras de iteración para repetir bloques de código un número determinado de veces o mientras se cumpla una condición. Incluye ejemplos de uso de contadores, acumuladores, búsqueda de máximos y mínimos, y anidamiento de ciclos.

Cargado por

matydla14
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

Universidad Nacional de la Matanza

UNIDAD 4. ESTRUCTURA DE
ITERACION
Cátedra: Elementos de Programación

INDICE
1. ITERACIÓN O REPETICIÓN........................................................................................................................... 3
2. ESTRUCTURAS DE ITERACIÓN DEFINIDA ..................................................................................................... 3

3. CONTADORES Y ACUMULADORES .............................................................................................................. 7


4. MÁXIMOS Y MÍNIMOS ............................................................................................................................... 8

5. ESTRUCTURAS DE ITERACIÓN DEFINIDA ANIDADAS ................................................................................. 10


6. ESTRUCTURAS DE ITERACIÓN CONDICIONADA ......................................................................................... 10

7. EJERCITACION ESTRUCTURA DE ITERACION ............................................................................................ 13

Unidad 4 2 / 13
Cátedra: Elementos de Programación

UNIDAD 4
Iteración
Objetivos: Aplicar en la solución de los problemas las estructuras iterativas, en sus variantes.
Realizar programas con algoritmos de búsqueda de máximos y mínimos. Comprender los
conceptos de variables acumuladoras y contadoras. Utilizar las estructuras de iteración para
validar los datos de entrada.

1. Iteración o repetición
En los programas vistos hasta ahora cada instrucción se ejecutaba una sola vez, en el orden que
aparece en el programa. Pero a veces es necesario repetir la ejecución de un grupo de instrucciones,
para lo cual se van a utilizar las estructuras de repetición o iteración.

Existen dos tipos de ciclos de repetición:

a) ITERACIÓN DEFINIDA: Cuando se conoce de antemano la cantidad “exacta” de veces que se


debe repetir ese proceso o grupo de sentencias.
b) ITERACIÓN CONDICIONADA: Cuando NO se conoce la cantidad de iteraciones a efectuar, es
decir, que la repetición depende del cumplimiento de cierta condición.

2. Estructuras de iteración definida


Se desarrolla el siguiente ejemplo: Ingresar número de documento y nota de los 5 alumnos de un
curso, informar por cada uno el número de documento y la leyenda “APROBADO” o “DESAPROBADO”
si la nota es mayor a 4 o no.

Unidad 4 3 / 13
Cátedra: Elementos de Programación

Una vez

Cinco
Dos veces
veces

Tres veces

Unidad 4 4 / 13
Cátedra: Elementos de Programación

Se observa que un grupo de instrucciones se repiten 5 veces. Para eliminar las repeticiones se debe
escribir las instrucciones repetidas una sola vez y efectuar un mecanismo para realizar la repetición 5
veces. Para ello, se usa un ciclo de repetición definida(Para):

Donde:
 variable_numerica: es la variable de control, ya que con ella se controla el ciclo.
 valor_inicial: es el valor inicial que toma la variable de control.
 valor_final: es el valor final que debe tomar la variable.
 paso: incremento que se le aplica a la variable cada vez que se ejecuta el ciclo. Cuando el paso
es 1 se puede obviar.

Funcionamiento: Se asigna a la variable de control el valor inicial, se compara con el valor final, si es
menor o igual que éste, se ejecutan las sentencias dentro del ciclo, luego incrementa a la variable con
el valor del incremento, si sigue siendo menor o igual al valor final realiza otra ejecución y así hasta
que llegue a superar el valor final.

Unidad 4 5 / 13
Cátedra: Elementos de Programación

Se aplica esta estructura al problema anterior:

El ciclo de iteración definida no siempre necesariamente debe iniciar en 1 ni ser creciente, por ejemplo
para repetir 5 veces un proceso también se puede:
 Poner como valor inicial el 5
 Poner como valor final la condición 1
 Poner -1 como el valor de incremento, generando de esta forma un decremento

Tampoco el incremento o decremento debe ser siempre 1 o -1 sino que puede ser cualquier otro valor
que modifique la variable de control.

Ejemplo 4:

Realizar un programa para mostrar los números pares entre 30 y 10 en forma descendente.

Unidad 4 6 / 13
Cátedra: Elementos de Programación

3. Contadores y acumuladores
Un contador es una variable en la memoria que se incrementará en una unidad cada vez que se
ejecute el proceso. El contador se utiliza para llevar la cuenta de determinadas acciones que se pueden
solicitar durante la resolución de un problema. Hay que realizar la inicialización del contador o
contadores. La inicialización consiste en poner el valor inicial de la variable que representa al contador
(generalmente con el valor 0).

Un acumulador es una variable que suma sobre sí misma un conjunto de valores, para de esta manera
tener la suma de todos ellos en una sola variable. De igual forma, se pueden efectuar decrementos en
un acumulador.

La diferencia entre un contador y un acumulador es que mientras el primero va aumentando de uno


en uno, el acumulador va aumentando o decrementando en una cantidad variable.

Ejemplo 5:

Ingresar 10 números, informar la cantidad de números negativos y la sumatoria de los positivos.

Se deben ingresar los números en un ciclo de repetición definido. Por cada número se tiene que
consultar si es menor que cero o no. Si es menor que cero se cuenta utilizando un contador
(incrementando el contador en uno), si no se suma en un acumulador (sumarle al acumulador ese
número).

Unidad 4 7 / 13
Cátedra: Elementos de Programación

4. Máximos y mínimos
Es un problema común querer encontrar el mayor o el menor valor de una determinada serie de
valores. Si se quiere encontrar el mayor valor, se debe pensar igual a un trabajo manual con una pila
de hojas donde cada una tiene un valor numérico. Tomo el primero y lo retengo en la mano izq.
(variable mayor), tomo al segundo con la mano derecha (variable dato) y lo comparo con el de la
izquierda, si es más grande descarto el de la mano izquierda y paso el de la derecha a la izquierda; se
procede igual con los restantes valores, quedando finalmente el mayor en la mano izquierda o sea, en
la variable mayor.

Es decir, que para calcular un máximo de un conjunto de valores se toma el primer valor como
referencia, siendo este momentáneamente el más grande. Luego al ingresar otro número se compara
con el que se tiene de referencia. Si el nuevo número es mayor al de referencia entonces se reemplaza
por el recién ingresado, de esta forma siempre quedará como valor de referencia el más grande y se
comparará con cada uno de los número ingresados. Si se desea buscar el valor mínimo el
procedimiento es exactamente igual pero se compara si el número recién ingresado es menor al de
referencia en cuyo caso se lo reemplaza.

Ejemplo: Ingresar 10 valores numéricos y determinar e informar el mayor.

Se puede realizar de 3 formas:

a) Leer el primero afuera del ciclo


b) Una pregunta para separar el primero del resto.
c) Usar una señal para separar el primero del resto.

a) Leer el primero afuera de ciclo y lo almacenamos en la variable mayor.

b) Una pregunta para separar el primero del resto, para darle valor inicial a la variable mayor.

Unidad 4 8 / 13
Cátedra: Elementos de Programación

En este ejemplo se realiza un solo if con dos condiciones, se pregunta si es la primera vez que se
ingresa al ciclo, condición que se da cuando i vale 1. Luego esa condición será siempre falsa y por lo
tanto se evalúa si el número recién ingresado es más grande que el guardado en la variable mayor. Sin
embargo la primera vez que se ingresa la variable mayor aún no tiene valor asignado pero como el
lenguaje C no necesita evaluar todas las condiciones, la primera vez que se ingresa al ciclo la primer
condición es verdadera y al ser un or con una condición que sea verdadera es suficiente y por lo tanto
no se evalúa la segunda condición.

c) Una pregunta para separar el primero del resto, para darle valor inicial a la variable mayor,
utilizando una señal.
Una bandera o señal cumple con la función de tener el conocimiento de que un evento haya
sucedido o no, es una variable a la cual se le asigna solo dos valores, uno se le asigna al inicio del
proceso y el otro, al suceder el evento buscado.

Unidad 4 9 / 13
Cátedra: Elementos de Programación

5. Estructuras de iteración definida anidadas


Las estructuras de control iterativas pueden anidarse, es decir, incluir a un ciclo completo dentro de
otro. Las estructuras interior y exterior no necesitan ser del mismo tipo, pero es "esencial" que la
estructura interior esté "totalmente" incluida en la exterior, no pueden "solaparse". Estamos
analizando “for anidados”, destacando que pueden ser 2 o más y que las variables utilizadas como
control en los ciclos deben ser distintas.

Ejemplo 5: Hacer un algoritmo que imprima un triángulo rectángulo de * con base y altura de n
cantidad de *. El valor de n debe ser ingresado por teclado.

Por ejemplo si n es 4, debe imprimir:

*
**
***
****

6. Estructuras de iteración condicionada


El ciclo definido no da respuesta a los casos en que desconocemos la cantidad de datos a procesar.
Existen otras estructuras iterativas que permiten una mayor flexibilidad en la resolución de los
problemas, sin tener que conocer previamente la cantidad de datos. Esta estructura requiere que
pueda establecerse previamente una condición para poder finalizar, que, en general, es sencilla de
definir.

Unidad 4 10 / 13
Cátedra: Elementos de Programación

En esta estructura, primero se evalúa la condición, si es verdadera se ejecutan las sentencias


que están dentro del ciclo, si es falso se pasa a la sentencia que continua, o sea se abandona el
ciclo. Se debe tener precaución en no quedar atrapado dentro del ciclo, para lo cual dentro de
las sentencias a repetir se debe incluir alguna que altere la condición de iteración.

Ejemplo: Confeccionar un programa para imprimir una línea con 50 asteriscos.

Podríamos resolverlo con una estructura de iteración definida, pero también podemos utilizar una
estructura de iteración condicionada como se muestra en el ejemplo.

Ejemplo: Confeccionar un programa para ingresar diversos valores de temperatura hasta que aparezca
uno igual a cero. Calcular e informar el promedio de los valores ingresados, sin considerar el cero.

Unidad 4 11 / 13
Cátedra: Elementos de Programación

Existe otra estructura de iteración condicionada, similar en gran medida al “Mientras”


denominada “Repetir …. Hasta Que”.

Se van a ejecutar las sentencias SIEMPRE UNA VEZ y todas las otras veces que sean
necesarias mientras la condición sea “verdadera”.
Es útil cuando es necesario ejecutar una serie de sentencias por lo menos una vez. Es un ciclo
(1 – n), a diferencia con el ciclo Mientras que es (0 - n). Una aplicación puede ser para
controlar el ingreso de los datos.
Ejemplo: Solicitar el ingreso de un valor que debe ser positivo, reiterar la solicitud mientras no
se ingrese un valor positivo.

Comparación entre Mientras y Repetir…Hasta Que

a) En el Mientras la condición se evalúa “antes” de ejecutar el bucle. Ciclo 0 –N por lo tanto las
variables de la condición deben tener valor asignado antes del ciclo.
b) En el Repetir… Hasta Que la condición se evalúa “después” de ejecutar una vez el cuerpo del
bucle. Ciclo 1 – N. Por lo tanto las variables de la condición pueden asignarse y modificarse
directamente dentro del ciclo.
c) Las variables que figuren en la condición deben modificar su valor dentro del ciclo sino una vez
dentro nunca se saldrá del mismo.

Unidad 4 12 / 13
Cátedra: Elementos de Programación

7. EJERCITACION ESTRUCTURA DE ITERACION

1. Leer los valores de un intervalo y luego leer valores e indicar cuántos de ellos
pertenecen al intervalo. El final de la lectura está dado por el ingreso del extremo
derecho del intervalo.

2. Se realiza una encuesta para estudiar la aceptación en el mercado de dos productos A


y B. Cada encuestado debe responder si acepta o no (‘S’, ‘N’) cada uno de los
productos.
Usted debe determinar la manera de determinar el fin de datos. Se pide informar el
porcentaje de consumidores que aceptan el producto A, el producto B, el producto A
solamente, el producto B solamente, ambos productos, ninguno de ellos.

3. Ingresar primeramente N como cantidad de números(valor positivo) y luego ingresar


N valores numéricos de a uno por vez.
Determinar:
a-) el rango de variación de estos valores (valor máximo - valor mínimo).
b-) el orden de ubicación de estos valores dentro de los N ingresados.
NOTA: Todos los valores ingresados son únicos.

4. Se tiene un conjunto de números enteros positivos. De cada uno de ellos se ingresan


los cuatro dígitos que lo forman (a, b, c, d; para fin de ingreso de datos a = 0)
Diseñar un algoritmo que redondee cada número a la centena más próxima e informe
el número ingresado y el número obtenido por redondeo.

5. Se tienen las temperaturas, todos valores mayores que cero registradas por 10
aparatos. Cada aparato registró 20 valores, los cuales se ingresan a razón de uno por
vez. Ingresar primero las 20 mediciones del aparato 1, luego las 20 del aparato 2 y así
sucesivamente. Determinar e informar:
La temperatura promedio registrada por cada aparato.
El máximo valor registrado por cada aparato
Número del aparato que registró la mínima medición.

Unidad 4 13 / 13

También podría gustarte