sábado, 16 de abril de 2016

ALGORITMOS REPETITIVOS

Estructuras Repetitivas (Bucles)

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 
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


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