Estructuras Repetitivas
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.
El bucle de la siguiente figura es infinito, ya que las instrucciones (1), (2) y (3) se ejecutan indefinidamente, pues no existe salida del bucle, al no cumplirse una determinada condición.
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
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
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:
No hay comentarios.:
Publicar un comentario