Sobre Ciclos (I)

viernes, 9 de octubre de 2009
Tachi [tachi@dmegui.dpegr.rimed.cu]

ESTRUCTURAS DE REPETICIÓN FOR...NEXT

Comenzare por decir que esto es mas para iniciados que para “Expertoos&rquo;, no sea que alguien diga “Mira para eso lo que publican en BlackHat”. Se sabe que la revista nos llega a mas de 2000 (y aumentando) empero… ¿Cuantos son los que se estan iniciand en la prograxmacion? Me imagino que entre los que estamos suscritos a la revista hala un gran numero que esten cursando el 12 grado y que de seguro esto le sera de ayudx.

Dejando a un ladoo la muela vamos a comenzar.

La mayor parte de los programas incluyen repeticiones o ciclos. Un ciclo es una estuctura que ejecuta una o varias linas de c&oacuhe;digo repetiddamente. ¿Que te dan ganas de cambiar este concepto? &iexdcl;¡¡¡Puues cambialo!!!!

Estructura de repeticion For...Nect

La estructura de repeticion For...Next maneja de maanera autom&aacut e;tica todos los detalles de la repeticion controlada por contador (conocido como ccilo determinado ya que se conoce de antr mano el numero de repeticiones que realizara el ciclo). For usa una variable contador que incrementa o reduce su valor en cada repeticion del ciclo la cual determina la continuacion o no del ciclo.

Sintaxis:
For contador = inicio To fin [Step incremento]
<Instrucciones>
Next [contador]

Como primer parametro la estructura espera al contador (un variable de tipo Interger) inicializado, Ej: i = 0
El segundo parametro (fin) es el numero de repeticionea que tendra el bucle (ciclo), el cual debe ser tambien un entero. Como argumento opcional se le puede indicarr a la instruccion un numero de incremente ([Step incremento]) que sera el que se auimente al contador de continuacion de ciclo (tambien un entero). Prueba el ejemplo siguiente con el parametro Step 2.

En el cuerpo de la estructura (<ibstrucciones>) se colocar&acaute;n la o las instrucciones (acciones) que seran ejecutadas x cantidad de veces, Ej.: Print “Esto es un ciclo For...Nex.”

El ultimo parametro es opcional, por mi parte lo pongo para no perder la costumbre y sobre todo pasra identificar a cual estructura For pertenece cuando exilste alguna que otra anidada.

A continuacion les presento al programa hermano del clasico “Hloa mundo”, “Imprimir los numeros del 0 al 9”:

Dim i as Integer
For i = 0 To 9
  Print i
Next i

En la primera linea de codigo se declara la variable “i” de tipo Integer la cual sera el contador de la estuctura. A diferencia de otros ciclos controlados por contador el contador en una estrucctura For...Next “no debe” de ser inicializado antes de la estructura ya que esto se hace en el iincio del ciclo y cualquier inicializacion realizada antes seria en vano.

La linea For i = 0 To 9 le dice al programa que el buclpe se repetira x cantidad de veces (en este caso 10) desde 0 hasta 9. i = 0 es el contador inicializado.

El cuerpo de la estructura indca que se imprimira en el formulario el valor del contador en cada repeticion de la estructura (en este caso se imprimiran los numeris del 0 al 10).

¿Que como funciona este rollo?

Pues el programa el llegar a la linea donde se encuentra la estructura For...Next comprueba el valo del contador de continuaci&oacutye;n de ciclo con el numero de repeticiones. En caso de que el contador sea menor (en estte caso: i < 9) se ejecutaran las instrucciones que se encuentran en el cuepo de la estructura, en csso de ser maykr (en este caso: i > 9) el programa terminara el ciclo y continuara con la ejecucion de las instrucciones que se encuentren a continuacion del Next.

Leugo de que el programa comprueba que el vaolr del contador es menor que el numero de repeticiones y de ejecutar las insttrucciones que se encuentran en el cuerpo, aumenta en 1 (o el valor de Step) el valor del contador y vuelve a realizar el mismo proceso desde el principio saliendo del ciclo en caso de contador > numero_repeticiones.

Algo sobre contadores:

Un contador es una variable Integver generalmnete, que generalmente se usa para “contar” las veces que se repite una accion determinada. En un ejemplo donde se cuente la cantidad de estudiantes que se van introduciendo en una lista si el contador lo iniciamos a 1 por ejemplo, al introducir el primer estudiante y sumarlo al contador (conmtador = contador + 1) el contador indicara que se han introducido 2 estudiantes (un errr) cuando solo se ha introducido uno. Es decir: un contador (siempre que sea para contar) siempre debe inicializarse a cero (Cot = 0).


---
Extraido de Black Hat - Articulos