Un bucle o lazo (Loop) es un
segmento de un algoritmo o programa, cuya instrucciones se repiten un número
determinado de veces mientras se cumple una determinada condición (existe o es
verdadera la condición). SE debe establecer un mecanismo para determinar las
tareas repetitivas. Este mecanismo es una condición que puede ser verdadera o
falsa y que se comprueba una vez a cada paso o iteración del bucle (total de
instrucciones que se repiten en el bucle).
Un bucle consta de tres partes:
-
decisión,
-
cuerpo del bucle,
-
salida del bucle.
Si tras la lectura de la variable N se coloca una condición, el bucle dejará de ser infinito y tendrá fin cuando la condición sea verdadera.
El diagrama de flujo escrito en pseudo código es aproximadamente el siguiente:
Inicio
SUMA 0
1: leer N
Si N = 0 entonces
Escribir SUMA
Ir_a fin
Si_no
Suma suma + N
FIN_SI
IR_A 1
FIN
BUCLES ANIDADOS
Un bucle puede anidarse dentro de otro como se
vio en clase con los condicionales anidados (un si fin_si dentro
de otro si Fin_si)
Contadores
Un contador es una variable cuyo valor se incrementa o
decremento en una cantidad constante en cada vuelta.
La siguiente figura
contar
del 1 al 50
presenta un diagrama de flujo para un algoritmo que se desea repetir 50
veces; el contador se representa en este ejemplo con la variable CONT. La
instrucción que representa a un contador es la asignación CONT =
CONT + 1.
La siguiente figura
Decrementar
desde N hasta 0
es otro ejemplo de un diagrama de flujo con
contador; es este caso, negativo. Se dice también descontar.
El contador puede ser positivo (incrementos, uno en uno) o
negativo (decrementos, uno en uno).
Importante acerca de incrementos y
decrementos:
En la primera Figura el contador cuenta desde 1 al 50 y deja de
contar cuando la variable CONT toma el valor 51 y se termina el bucle.
En la
segunda Figura el contador cuenta negativamente,
o lo que es lo mismo, descuenta o decrementa; comienza a contar en n y
se decrementando hasta llegar a cero, en
cuyo caso se termina el bucle y se realiza la acción escribir.
Como se vio anteriormente la condición permite
terminar el bucle cuando ésta es verdadera (si)
ahora veremos las estructuras repetitivas que se
usarán en el curso de algoritmos:
Tipos de estructuras repetitivas
Mientras Condicion HacerFin_mientrasDesde Variable=inicio Hasta Variable=Final hacerFin_desde(La anterior también puede ser usada con la palabra PARA en vez de DESDE ejemplo:
PARA Variable=inicio Hasta Variable=Final hacer
Fin_PARA)
RepetirHasta Condicion
Hemos visto que las
Estructura repetitivas
son aquellas en las que
especialmente se diseña para todas aquellas
aplicaciones en las cuales una
operación o conjunto de ellas deben repetirse muchas
veces.
asi los
Bucles (lazos o LOOPs) Son estructuras que repiten una
secuencia de instrucciones un numero determinado de
veces.
Interacción: Es el hecho de repetir
la ejecución de una secuencia de acciones; en otras
palabras el algoritmo repite muchas veces las acciones.
Al utilizar un bucle para sumar una
lista de números, se necesita saber cuantos números se
han de sumar, para poder detenerlo en el momento preciso; las
dos principales preguntas ha realizarse en el diseño de un bucle son:
¿Que contiene
el bucle? y ¿Cuántas veces se debe repetir?
Casos Generales de Estructuras
repetitivas
1) La condición de Salida del bucle
se realiza al principio del bucle (estructura mientras)
también llamada PRE-CONDICIONAL
2) La condición de Salida se origina
al final del bucle; el bucle se verifica hasta que se
verifique una cierta condición
también llamada
POST-CONDICIONAL (estructura Repetir Hasta).
3) La condición de salida se realiza
con un contador que cuente el numero de interacciones. (
i es un contador que cuenta desde el valor inicial (vi.) hasta el
valor final (vf) con los incrementos que se consideren.)
(estructura DESDE o PARA)

