martes, 5 de octubre de 2010

Bucles

Bucles
En otras circunstancias a la hora de escribir nuestras aplicaciones, nos podemos ver interesados o incluso obligados a utilizar bucles en nuestro código, con el fin y objetivo de evaluar expresiones y sentencias.
Esto es justamente lo que veremos a continuación.
1.- Bucles de repetición o bucles For
Es uno de los bucles más extendidos para recorrer una determinada porción de código un número de veces limitado. Si ese número de veces se convierte en ilimitado, se denomina bucle infinito y la ejecución del proceso se volvería eterna, por lo que es un tipo de bucle a controlar en nuestras aplicaciones.
La nomenclatura de uso de este tipo de bucle es de la siguiente manera:

    For <variable> = <valor inicial> To <valor final> Step <salto>
Next

Un ejemplo nos ayudará a comprender esto de forma sencilla y práctica:
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e AsSystem.EventArgs) Handles MyBase.Load
Dim intValor As Integer = 5
Dim I As Integer, strCadena As String = ""
For I = 1 To intValor
strCadena += Chr(I + 64)
Next
MessageBox.Show(strCadena)
End Sub

Este ejemplo en ejecución es el que puede observarse en la figura 3.15.

ejecución de un ejemplo de demostración del uso de un bucle For.

Como vemos en el ejemplo anterior, no hemos utilizado la palabra reservada Step ya que no es necesario utilizarla. A continuación veremos un ejemplo del uso de esta palabra reservada.

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e AsSystem.EventArgs) Handles MyBase.Load
Dim intValor As Integer = 5
Dim I As Integer, strCadena As String = ""
For I = 1 To intValor Step 2
strCadena += Chr(I + 64)
Next
MessageBox.Show(strCadena)
End Sub

Pero también podemos utilizar otro bucle, el bucle Do Until...Loop que nos permite ejecutar una o más sentencias de código, hasta que se cumpla una determinada condición. En este caso, la estructura del bucle sería de la forma:

Do
Loop  


Un ejemplo práctico del uso de este tipo de bucles sería el que se detalla a continuación:

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e AsSystem.EventArgs) Handles MyBase.Load
Dim intValor As Byte = 5
Dim intResultado As Byte
Do Until intValor < 1
intResultado += intValor
intValor -= 1
Loop
MessageBox.Show(intResultado)
End Sub

No hay comentarios:

Publicar un comentario