Unidad 10. Primer programa en VB, procedimientos (IV)





2    Estructuras repetitivas.

Como mencionamos en su momento, disponemos de dos tipos de bucles, el de tipo Repite y el de tipo Mientras, vamos a ver dichas instrucciones.

El bucle repite es una estructura en la que siempre se ejecutará un paso en el ciclo del bucle, dado que no existe ningún impedimento que impida la entrada en el mismo.

 

El control de la estructura está al final del mismo.

Si observamos la imagen podemos observar como el símbolo en forma de rombo, que es el que indica el control del bucle está situado al final de la estructura, y al principio solo hay instrucciones.

 

La flecha indica al punto del programa en el cual se inicia la estructura o en el que está la primera instrucción del bucle.

 

Si observamos las flechas podemos observar como la última instrucción del bucle es la encargada de analizar la situación en ese momento, para volver a iniciar una vez más el ciclo o seguir hacia la siguiente instrucción, ya fuera del bucle.

 

Su sintaxis es la siguiente.

 

do

 

  instrucción

  ... / ...

  instrucción

Loop Until (expresión de condición)

 

 

Sin embargo si observamos la imagen del bucle mientras, podemos observar como a diferencia del bucle repite, la instrucción de control está situada al inicio del mismo.

 

Esto implica que si al llegar al inicio del bucle, la condición que expresamos en ese momento no se cumple, el bucle no se ejecutará, no entraremos en el mismo, o si lo queremos ver así, el bucle está protegido en su ejecución.

 

Si observamos las flechas podemos observar como al acabar la última instrucción del bucle se retorna al inicio del mismo, donde está la instrucción de control, en ese momento se analiza la situación y se vuelve a ejecutar una vez más el ciclo, o se abandona el mismo, siguiendo a la siguiente instrucción.

Su sintaxis es la siguiente.

 

While expresión de condición

 

  instrucción

  ... / ...

  instrucción

End While

 

Hay una tercera opción de bucle que es el For.

Este bucle se ejecuta para un valor inicial, hasta un valor final, con un incremento determinado, no deja de ser una variación de un bucle mientras.

 

For X = 0 to 20

  instrucción

  ... / ...

  instrucción

Next

 

Lo que con un bucle mientras, equivale a:

 

inicialización;

While X <>20

 

  instrucción

  ... / ...

  instrucción

  incremento

End While

 

Existe la instrucción exit for, exit do, dentro de los bucles, pero quizás sea poco didáctico y no sea muy adecuado su utilización en una primera fase del lenguaje, al igual que el uso del for, hasta que no se haya avanzado más en el dominio del mismo.

 

En los bucles, sean del tipo que sean, y se utilicen para lo que sea, siempre hay que tener presente el valor de partida, el valor final, y el momento en el que se realiza el incremento del contador, si es que se usa, o  de la instrucción que provoque la progresión en el mismo.

Por ejemplo en la visualización de los números del 0 al 9, utilizaremos una variable del tipo entero.

Le daremos un valor inicial de cero, en el bucle la primera instrucción será visualizar, y la condición del bucle será mientras que x sea menor que diez.

El resultado será correcto.

 

Module Module1

  Sub Main

  Dim  x as Integer = 0

  while x < 10

  Console.Writeline(x)

  x = x + 1

  End While

  End Sub

End Module

 

Pero si alteramos el orden de las instrucciones, el valor cero inicial, ya no será válido, pues el primer valor que se visualizará será uno, y perdemos la visualización del cero. Además la condición final tampoco será válida, pues acabaremos en diez, no en nueve, que es de lo que se trata.

Pruébelo.

 

Por lo tanto hay que tener siempre presente, el punto de partida, los valores intermedios, el valor de la progresión, en que momento,  y cual es el último valor que debe procesarse en el bucle.

Teniendo eso presente no debe haber nunca problemas en el manejo de los bucles.

Octubre-2010
Pág. 10.4

Atrás  Inicio  Adelante






Página inicial  Cursos Informática Gratuitos

Síguenos en:   Facebook       Sobre aulaClic            Política de Cookies