22 jul. 2010

Estructura DESDE (For / Next)

La estructura repetitiva DESDE (For/Next) es una ciclo de repeticion controlado por "contador" debido a que esta estructura se la emplea cuando se conoce de antemano la cantidad de iteraciones que realizar el bucle.
El contador que se utiliza se denomina contador automatico, ya que actua como contador incrementando o decrementando su valor a una razon constante, a partir de un valor inicial hasta un valor final fijados con anterioridad o conocidos.

Representacion de la estructura DESDE
Codificación

1) Supongamos que deseamos imprimir numeros del 1 al 10, ambos includios, el codigo necesario es:


01 Dim i As Integer
02 For i = 1 To 10
03      Console.WriteLine("Linea " & i)
04 Next

En este caso no se especifico ningun tipo de incremento,por lo que se asume que el contador (i) sera incrementado en una unidad a cada iteración.

2) Si deseamos imprimir solo los numeros pares de 1 a 10, el codigo es:


01 Dim i As Integer
02 For i = 0 To 10 Step 2
03     Console.WriteLine("numero " & i)
04 Next

Para especificar que el contador se incremente de a 2 o N unidades, se utiliza la palabra reservada STEP, el valor que toma step, puede ser positivo, negativo e incluso cero, en este ultimo caso, el ciclo se convierte en un ciclo sin fin.

3) El cilo DESDE, puede terminar antes de que el contador llegue a su FIN, para eso se utiliza la palabra reservada  Exit For, esta sentencia provoca la salida inmediata del bucle, por ej. en el siguiente codigo el contador tiene un valor inicial de 1 hasta 10 e imprimir los numeros en cada iteracion, pero se a añadido la condicon de que cuando llegue a 5, el ciclo se rompa y salga inmediatamente del bucle.


01 Dim i As Integer
02 For i = 1 To 10
03 If i = 5 Then Exit For
04     Console.WriteLine("numero " & i)
05 Next

4) El ciclo DESDE tambien es utilizado para recorrer cadenas de caracteres, para ello la sintaxis es


01 PARA CADA [elemento de cadena] EN [cadena]
02  realizar accion
03 FIN

si se quiere imprimir cada caracter de la variable "CADENA" la codificacion es:


01 Dim cadena As String
02 cadena = "Hola Mundo"
03 For Each cadena In cadena
04     Console.WriteLine(cadena)
05 Next
Se va tomando los valores de cadena(0) hasta cadena(n) y se imprimen los valores

y el resultado:

3 comentarios:

Anónimo dijo...

buen post

Anónimo dijo...

Esta informacion esta buena

Naldy Molina dijo...

este siclo es conciderado

Publicar un comentario

 
Design by Free WordPress Themes | Bloggerized by Lasantha - Premium Blogger Themes | cna certification