1. Estructuras de Repetición
(Repetición Indexada)
Departamento de Programación y
Tecnología Educativa mrodriguez@unimet.edu.ve
2. La forma de repetición donde conocemos el número
de veces a repetir es la indexada.
Para contador = valorInicial hasta valorFinal
acción1
accion2
accion3
...
fin hacer
En este caso la repetición se realiza un número
determinado de veces, delimitado por los valores inicial
y final dados.
Departamento de Programación y
Tecnología Educativa mrodriguez@unimet.edu.ve
3. Un ejemplo sería:
Para cont = 1 hasta numero
Mostrar numero
fin para
La modificación de la variable de control es automática
en incrementos o decrementos específicos.
Generalmente es de 1 en 1 pero pudiera ser de otra
frecuencia.
En VBA sería:
For cont = 1 to numero
MsgBox (“Numero” & numero)
Departamento de Programación y
Next cont
Tecnología Educativa mrodriguez@unimet.edu.ve
4. No hay que tomar decisión, puesto que se conoce de
antemano la cantidad de veces que se va a ejecutar el
proceso.
Sintáxis:
var se inicializa en valor1
For var = valor 1 To valor2 Step <inc>
Si valor 1 <= valor
2, var va creciendo
Instrucciones
de inc en inc hasta Si valor 1 > valor 2, var va
var > valor2
Next var
decreciendo de inc en inc
hasta var < valor2
var es la variable que controla las inc es el valor en el cual se
veces que se repite el proceso quiere incrementar var
Departamento de Programación y
Tecnología Educativa mrodriguez@unimet.edu.ve
5. Supongamos que se quiere realizar una repetición desde
1 hasta 3, y se quiere mostrar el valor del contador en una
hoja de Excel “Salida”:
Option Explicit
Dim cont As Integer
For cont = 1 to 3
sheets(“Salida”).Cells (cont , 1) = cont
Next cont
..........
Donde Cont va tomando los valores 1, 2 y 3 sucesivamente en
forma automática.
Departamento de Programación y
Tecnología Educativa mrodriguez@unimet.edu.ve
6. Realizemos la “corrida en frío”:
En primer lugar cont toma el valor 1 1
Posición de memoria
cont
Pantalla : Hoja Excel
y lo escribe en la celda (1,1)
1
Option Explicit
Dim cont As Integer
For cont = 1 to 3
worksheets(“Salida”).Cells (cont , 1) =
cont
Next cont
Departamento.de Programación y
. ........
Tecnología Educativa mrodriguez@unimet.edu.ve
7. En seguida cont toma el valor 2
1
2 Posición de memoria
cont
Pantalla: Hoja Excel
y lo escribe en la celda (2,1)
1
2
Departamento de Programación y
Tecnología Educativa mrodriguez@unimet.edu.ve
8. Finalmente cont toma el valor 3
1
2 Posición de memoria
3 cont
Pantalla : Hoja Excel
Y lo escribe en la celda (3,1) 1
terminando el proceso. 2
3
Departamento de Programación y
Tecnología Educativa mrodriguez@unimet.edu.ve
9. Otro Ejemplo:
Este For se va a repetir
contador se inicializa en 1
20 veces, es decir,
inclusive se repite
Total = 0 cuando Contador=20.
For contador = 1 To 20
total = total +contador Cuando contador>20,
termina el for y va a
Next realizar la siguiente
Al llegar al Next, contador va a
instrucción después del
incrementarse de uno en uno
(2,3,4,…) Next
¿Cómo codificarías lo mismo
utilizando la instrucción While?
Departamento de Programación y
Tecnología Educativa mrodriguez@unimet.edu.ve
10. Respuesta: Si lo hiciéramos con While:
Total = 0 Esta forma de hacerlo
Contador =1 es más larga y no nos
podemos olvidar de
While contador <= 20 inicializar y actualizar la
total = total +contador variable para que el
contador = contador +1 while funcione
correctamente
Wend
Sin embargo, el For solamente
puede sustituir al while cuando la
variable para evaluar la condición de
parada es un contador
Departamento de Programación y
Tecnología Educativa mrodriguez@unimet.edu.ve
11. Un ejemplo donde el contador decrece:
contador se inicializa en 20 Cuando contador< 0, termina y
va a la siguiente instrucción
Total = 0 después del Next
Min = 0
Max = 20 Indica en que valor
For contador = Max To Min Step -2 va a decrementar
contador
total = total +contador
Next contador
Al llegar al Next, contador va a
decrementar de dos en dos
(18,16,14,…)
Departamento de Programación y
Tecnología Educativa mrodriguez@unimet.edu.ve
12. La forma de repetición indexada la utilizaremos en las
próximas clases para realizar cálculos completos después
de la repetición.
Además se utilizará en muchos ejercicios en la última
unidad del curso: Manejo de Datos como Registros de
Información, donde los for nos ayudarán a “movernos” en
las filas o las columnas donde se encuentren los datos.
Departamento de Programación y
Tecnología Educativa mrodriguez@unimet.edu.ve