Vous êtes sur la page 1sur 21

MÓDULO 4

ESTRUCTURAS DE
REPETICIÓN
Prof. Linette Colmenares
ESTRUCTURAS DE
REPETICIÓN
Las estructuras de repetición, permiten la ejecución de una
secuencia de instrucciones varias veces. El número de
veces que las instrucciones se ejecutarán se pueden
especificar de manera explícita, o a través de una
condición lógica que indica cuándo se ejecuta de nuevo y
cuándo no. Cada ejecución del bloque de instrucciones se
le conoce como una iteración.
ESTRUCTURAS DE
REPETICIÓN
En las estructuras de repetición se utilizan diferentes
herramientas para controlar el número de veces que se
ejecuta el bloque de instrucciones:
– Contador
– Acumulador
– Centinela
ESTRUCTURAS DE REPETICIÓN
Contador
● Es una variable cuyo valor se modifica en una unidad
constante cada vez que ocurre un evento. La modificación
consiste en incrementar o decrementar el valor del
contador.
● Se debe inicializar el contador antes de utilizarlo.
Inicialización contador = valor_inicial
Incremento contador = contador + constante
Decremento contador = contador - constante
Ejemplo:
i=1
i=i+1
ESTRUCTURAS DE REPETICIÓN
Acumuladores
● Son variables cuyo valor se modifica, en una cantidad
variable, cada vez que ocurre un evento. La modificación
puede ser incrementar o decrementar el valor.
● Los acumuladores deben ser inicializados antes de
utilizarse.
Inicialización acumulador = valor_inicial
● Operaciones
acumulador = acumulador + valor
acumulador = acumulador – valor;
acumulador = acumulador * valor;
acumulador = acumulador / valor;
ESTRUCTURAS DE REPETICIÓN
Centinelas
● Son variables que pueden tomar dos valores (cierto,
falso). Según la expresión lógica evaluada, uno de estos
valores permiten la ejecución repetida de un bloque de
instrucciones.

Ejemplo
Valor inicial bandera = falso
bandera = verdadero
ESTRUCTURAS DE
REPETICIÓN

 Repita Mientras

 Repita Hasta

 Repita Para
ESTRUCTURA REPITA MIENTRAS

 La repetición se controla mediante una expresión lógica


y se ejecuta mientras esta expresión permanece cierta,
finalizando cuando se hace falsa.

 La ejecución repetida del cuerpo del bucle debe


provocar en algún momento que el valor de la expresión
lógica se haga falso; de lo contrario, la repetición
continuará ejecutándose infinitamente.

 Si la expresión lógica es falsa al comenzar el bucle, éste


no se realizará.
ESTRUCTURA REPITA MIENTRAS

SINTAXIS
Repita mientras (expresión lógica)
secuencia de instrucciones
fin del repita mientras (frm)

Expresión lógica es la expresión que se evalúa para


determinar la ejecución o no del bloque de instrucciones
secuencia de instrucciones es el conjunto de instrucciones
que se ejecuta si la condición se evalúa Verdadero.
EJEMPLO
Algoritmo que calcula la suma de los primeros N naturales

inicio
n, i, suma: entero
Suma = 0
Leer (n)
i=1
Repita mientras i <= n
suma = suma + i
i=i+1
frp
Escribir (‘el resultado es’, suma)
fin
EJEMPLO
Diagrama de Flujo que calcula la suma de los primeros N naturales

inicio

i=1
Suma = 0

i <= n
verdadero
suma = suma + i falso
i=i+1

suma

fin
ESTRUCTURA REPITA HASTA

 Se ejecuta siempre por lo menos una vez.

 La terminación del bucle se produce cuando el


valor de la expresión lógica o condición de
salida es verdadera.

 Se ejecuta hasta que la expresión es verdadera,


es decir, se ejecuta mientras la expresión sea
falsa.
ESTRUCTURA REPITA HASTA

SINTAXIS

Repita
secuencia de instrucciones
hasta (expresión lógica)

Expresión lógica es la expresión que se evalúa para


determinar la ejecución o no del bloque de instrucciones
secuencia de instrucciones es el conjunto de instrucciones
que se ejecuta si la condición se evalúa falso.
EJEMPLO
Algoritmo que calcula la suma de los primeros N naturales

inicio
n, i, suma: entero
Suma = 0
Leer (n)
i=1
Repita
suma = suma + i
i=i+1
Hasta que i = n + 1
Escribir (‘el resultado es’, suma)
fin
EJEMPLO
Diagrama de Flujo que calcula la suma de los primeros N naturales

inicio

i=1
Suma = 0

suma = suma + i
i=i+1

i=n+1
verdadero
falso

suma

fin
ESTRUCTURA REPITA PARA
 Repite la ejecución de una o varias
sentencias un número fijo de veces.
 Necesita una variable de control del
bucle.
 La variable de control toma valores
desde un límite inferior hasta un
límite superior.
 La variable de control debe ser entera
ESTRUCTURA REPITA PARA
 Encada ciclo después de ejecutar el
bloque de instrucciones, la variable
contadora es incrementada en 1
automáticamente y en el momento en
que la variable sobrepasa el límite
superior el ciclo termina.
ESTRUCTURA REPITA PARA
SINTAXIS

repita para variablecontrol = vi hasta vf


secuencia de instrucciones
fin del repita para (frp)

Donde variablecontrol es la variable contadora del ciclo, la cual


debe ser de tipo entero.
Vi: es el valor inicial que toma la variable contadora
Vf: es el último valor que toma la variable contadora. Cuando el
valor de la variable contadora supere este valor, el ciclo termina.
Secuencia de instrucciones: es el conjunto de instrucciones que se
ejecuta en cada iteración, mientras la variable contadora no
sobrepase el vf.
ESTRUCTURA REPITA PARA
 Casos:
 Cuando vi es menor que vf ocurre lo siguiente:
 1. La variable contadora se vuelve igual a vi
 2. Se ejecuta la secuencia de instrucciones
 3. Se incrementa automáticamente en 1 la variable contadora
del ciclo.
 4. Si el valor de contador del ciclo es menor o igual que vf se
vuelve de nuevo al paso 2. De otro modo se abandona el ciclo.

 El valor final de la variable contadora queda


incrementada por encima del vf para que pueda finalizar
el ciclo
EJEMPLO
Algoritmo que calcula la suma de los primeros N naturales

inicio
n, i, suma: entero
Suma = 0
Leer (n)
Repita para i = 1 hasta n
suma = suma + i
frp
Escribir (‘el resultado es’, suma)
fin
EJEMPLO
Diagrama de Flujo que calcula la suma de los primeros N naturales

inicio

i = 1 hasta n

suma = suma + 1

suma

fin