ESTRUCTURAS DE CONTROL REPETITIVAS (WHILE- DO WHILE - FOR) Y DIAGRAMAS DE FLUJO

ESTRUCTURAS DE CONTROL.-
Las estructuras de control repetitivas, son aquellas que permiten ejecutar un conjunto de instrucciones varias veces, de acuerdo al valor que genere la expresión relacional y/o lógica. Esto significa que una instrucción condicional repetitiva permite saltar a una instrucción anterior para volver a ejecutarla, a las estas estructuras se les conoce también como ciclos o bucles, por su funcionamiento
 
Estructuras repetitivas/iterativas tenemos las siguientes:
El bucle while 
El bucle for 
El bucle do…while 
Bucles anidados

Las instrucciones tienen el mismo fin, y difieren únicamente en su sintaxis, siendo posible sustituir una solución en la que se utiliza "while", por una en la que se utiliza "do-while" o "for".
 
En los diagramas de flujo, un ciclo se representa de la siguiente manera:
Estructuras Repetitivas | Programación Galanista

Empezaremos por la Estructura WHILE.-

En la imagen se puede observar que las líneas de flujo, indican el orden a seguir y según el valor de la condición, continuará ejecutándose el mismo conjunto de instrucciones o saldrá del ciclo. Entre las tres instrucciones hay pequeñas variaciones de representación gráfica que serán detalladas en la explicación de uso de cada una de ellas.

LA CONDICIÓN.- es el requisito que debe cumplirse para que se ejecuten los ciclos de instrucciones que se encuentran dentro del bucle repetitivo, en WHILE, si la condición no deja de cumplirse se producirá un bucle infinito y eso es un problema grave que tendremos que evitar a toda costa, a no ser que la lógica del programa lo necesite. Por eso en el bloque de instrucciones tiene que haber un punto de inflexión donde cambie el valor de la condición. En nuestro caso aumentamos y disminuimos la variable numero sabiendo que en algún momento dejará de cumplirse las condiciones.

Las estructuras de control repetitivas utilizan dos tipos de variables: Contadores y Acumuladores.

QUÉ ES UN CONTADOR?.- es una variable de tipo entero, que incrementa o decrementa su valor de forma CONSTANTE y requiere ser inicializada generalmente en 0 o 1, aunque en realidad depende del problema que se está resolviendo. Como su nombre lo indica se utilizan en la mayoría de veces para contar el número de veces que se ejecuta una acción, o para contar el número de veces que se cumple una condición (expresión relacional/lógica).

La variable que cumple el rol de contador, aparece tanto a la izquierda como a la derecha, por la propiedad destructiva de la asignación; así tomará el valor anterior, le adicionará o reducirá el valor constante y asignará el nuevo valor.


Es una variable numérica, que incrementa o decrementa su valor de forma NO CONSTANTE y requiere ser inicializada. Como su nombre lo indica se utilizan para acumular valores en una sola variable, ya sea de suma o producto. Por lo tanto existen dos modos de inicialización:
QUÉ ES UN ACUMULADOR?.- 
  • Para Suma: Inicializar en 0
  • Para Producto: Inicializar en 1
Esto con el objetivo de no alterar los valores de las respectivas operaciones.

EJEMPLOS:
Contador y Acumulador:
Estructuras básicas. - Aprende a programar

Algoritmo que imprima los numeros impares del 1 al 100

ESTRUCTURA HACER - MIENTRAS (DO-WHILE)

El bucle hacer-mientras al igual que el bucle desde/para que se verá con posterioridad, evalúan la expresión al comienzo del bucle de repetición; siempre se utilizan para crear bucle pre-test. Los bucles pre-test se denominan también bucles controlados por la entrada.

En numerosas ocasiones, se necesita que el conjunto de sentencias que componen el cuerpo del bucle, se ejecuten al menos una vez, sin importar el valor de la expresión o condición de evaluación.

Estos bucles se denominan bucles post-test o bucles controlados por la salida. Un caso típico es el bucle hacer-mientras (do-while) existente en lenguajes como C/C++, Java o C#.

El bucle hacer-mientras es análogo al bucle mientras, y el cuerpo del bucle se ejecuta una y otra vez mientras la condición (expresión booleana) sea verdadera. Existe, sin embargo, una gran diferencia y es que el cuerpo del bucle está encerrado entre las palabras reservadas hacer y mientras. Todas las sentencias en el interior del bucle se ejecutan al menos una vez antes de que la expresión o condición se evalúe. Entonces, si la expresión es verdadera las sentencias del cuerpo del bucle se ejecutan una vez más. El proceso continúa hasta que la expresión evaluada toma el valor falso.

El diagrama de control del flujo se ilustra en la Figura 6.1, donde se muestra el funcionamiento de la sentencia hacer mientras (Joyanes Aguilar, 2008, pág. 166).


Figura 6.1. Estructura hacer-mientras: diagrama de flujo.

Ejemplos de diagramas de flujo de algoritmos, usando la estructura hacer-mientras:

 Ejemplo 1

Calcula la suma de 10 números ingresados por teclado.

Ejemplo 2

Genera la serie Fibonacci, después de ingresar por teclado el número de términos deseado



DIAGRAMAS DE FLUJO

ESTRUCTURA REPETITIVA  DESDE/ PARA   -  BUCLE FOR

En muchas ocasiones, se conoce de antemano el número de veces que se desean ejecutar las acciones de un bucle. En estos casos, cuando el número de iteraciones es fijo, se debe usar la estructura desde o para (for, en inglés). La estructura desde ejecuta las acciones del cuerpo del bucle un número especificado de veces y de modo automático controla el número de iteraciones o pasos, a través del cuerpo del bucle. Es posible representar el bucle con símbolos propios.

                           Figura 7.1. Modelo 1                                                                        Figura 7.2. Modelo 2


Asimismo, como este otro símbolo.

Realizar diagramas de flujo de los siguientes algoritmos, usando la estructura desde/para ("for")

Ejemplo 1: Calcular la factorial de un número ingresado por teclado.

Ejemplo 2: Verificar si un número ingresado por teclado pertenece a los números primos.

BUCLE FOR



Comentarios

DIVERSIDAD DE CONOCIMIENTO

MENSAJE DE BIENVENIDA

EDUCACIÓN FRASES CELEBRE.