Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Repetición condicionada en VBA
1. Estructuras de
Repetición
Estructuras de Repetición
by Dpto de Programacion y Tecnologia Educativa UNIMET is licensed under a Creative
Commons Reconocimiento-NoComercial-SinObraDerivada 3.0 Unported License.
mrodriguez@unimet.edu.ve
2. Estructuras de
Repetición
En la mayoría de los problemas a
resolver pueden existir procesos
que se hacen una sola vez y
procesos que se repiten varias
veces.
by Dpto de Programacion y Tecnologia Educativa UNIMET is licensed under a Creative
Commons Reconocimiento-NoComercial-SinObraDerivada 3.0 Unported License.
mrodriguez@unimet.edu.ve
3. Estructuras de
Repetición
Podemos codificar problemas donde las acciones se ejecutan
sólo una vez, pero la mayoría de las veces
necesitamos repetir varias veces esas acciones
La estructura de repetición nos permite indicar las acciones que
queremos repetir, un número determinado o indeterminado de
veces.
by Dpto de Programacion y Tecnologia Educativa UNIMET is licensed under a Creative
Commons Reconocimiento-NoComercial-SinObraDerivada 3.0 Unported License.
mrodriguez@unimet.edu.ve
4. Estructuras de
Repetición
Veamos el siguiente ejercicio:
Leer los datos de un grupo de personas. Imprimir los
nombres solo de aquellos que sean del sexo masculino.
Observa que debemos repetir la lectura y chequeo de
los datos, tantas veces como personas haya en el
grupo.
by Dpto de Programacion y Tecnologia Educativa UNIMET is licensed under a Creative
Commons Reconocimiento-NoComercial-SinObraDerivada 3.0 Unported License.
mrodriguez@unimet.edu.ve
5. Estructuras de
Repetición
Se utilizaría entonces la siguiente codificación:
Se va a
REPETIR el
proceso de
leer los datos
mientras
haya más
datos que
leer y se va
escribiendo el
reporte en la
hoja de
cálculo.
by Dpto de Programacion y Tecnologia Educativa UNIMET is licensed under a Creative
Commons Reconocimiento-NoComercial-SinObraDerivada 3.0 Unported License.
mrodriguez@unimet.edu.ve
6. Estructuras de
Repetición
Observa el uso que se le da aquí a la caja de
diálogo msgbox.
La caja de diálogo que aparece es:
by Dpto de Programacion y Tecnologia Educativa UNIMET is licensed under a Creative
Commons Reconocimiento-NoComercial-SinObraDerivada 3.0 Unported License.
mrodriguez@unimet.edu.ve
7. Estructuras de
Repetición
Hay dos tipos de estructuras de repetición:
La primera es aquella en la cual el número de repeticiones
es desconocido y se hará mientras se cumpla cierta
condición. Se conoce como Repetición Condicionada.
La segunda es aquella en donde se tiene perfectamente
establecido el número de veces que un grupo de acciones
se va a ejecutar (20, 5, 2 veces). Esta se conoce como
Repetición Indexada.
by Dpto de Programacion y Tecnologia Educativa UNIMET is licensed under a Creative
Commons Reconocimiento-NoComercial-SinObraDerivada 3.0 Unported License.
mrodriguez@unimet.edu.ve
8. Estructuras de
Repetición
Repetición un número indeterminado de veces
La primera forma de estructura repetitiva es para
aquellos casos donde no se conoce el número de
repeticiones o iteraciones en que se va a ejecutar una
acción o un bloque de acciones.
Estructura
Mientras se cumpla una condición
...
fin-mientras
by Dpto de Programacion y Tecnologia Educativa UNIMET is licensed under a Creative
Commons Reconocimiento-NoComercial-SinObraDerivada 3.0 Unported License.
mrodriguez@unimet.edu.ve
9. Estructuras de
Repetición
En Visual Basic Sería:
While (condición)
acción1
accion2
...
Wend
Las instrucciones acción1, acción2 hasta la instrucción
Wend se repetirán mientras la condición sea verdadera.
Debemos identificar la condición de parada, la cual
indica cuándo termina la repetición.
Se trata entonces, de una toma de decisión para repetir un
proceso mientras se cumpla una condición, y salir de él al
momento de no cumplirse.
by Dpto de Programacion y Tecnologia Educativa UNIMET is licensed under a Creative
Commons Reconocimiento-NoComercial-SinObraDerivada 3.0 Unported License.
mrodriguez@unimet.edu.ve
10. Veamos
el
siguiente
ejemplo:
Estructuras de
Repetición
La variable numero que
controla la condición de
parada debe ser
inicializada antes de la
repetición y modificada
dentro de la repetición.
La repetición puede
no ejecutarse nunca.
by Dpto de Programacion y Tecnologia Educativa UNIMET is licensed under a Creative
Commons Reconocimiento-NoComercial-SinObraDerivada 3.0 Unported License.
mrodriguez@unimet.edu.ve
11. Estructuras de
Repetición
La respuesta es :
Si no se coloca esa
instrucción ocurren Infinitas
repeticiones!!!!
Al no modificarse la variable la condición
es siempre verdadera y por lo tanto la
repetición no termina.
by Dpto de Programacion y Tecnologia Educativa UNIMET is licensed under a Creative
Commons Reconocimiento-NoComercial-SinObraDerivada 3.0 Unported License.
mrodriguez@unimet.edu.ve
12. Estructuras de
Repetición
¿Y qué pasaría en
este caso?
contador
Contador<> 0
5
SI
5-3 = 2
SI
2-3 = -1
SI
-1 -3 = -4
SI
-4 -3 = -7
SI
Respuesta: Nunca se sale de la repetición...
by Dpto de Programacion y Tecnologia Educativa UNIMET is licensed under a Creative
Commons Reconocimiento-NoComercial-SinObraDerivada 3.0 Unported License.
mrodriguez@unimet.edu.ve
13. Estructuras de
Repetición
¿Qué vemos entonces nuestro programa?
Inicialización de la
variable Respuesta
Condición de parada:
Respuesta = VbNo
Modificación de la
variable Respuesta
by Dpto de Programacion y Tecnologia Educativa UNIMET is licensed under a Creative
Commons Reconocimiento-NoComercial-SinObraDerivada 3.0 Unported License.
mrodriguez@unimet.edu.ve
14. Estructuras de
Repetición
¿Cómo resolvemos el siguiente enunciado?
Dado el precio de varios productos, codifique las
instrucciones para calcular el monto final a pagar por
cada uno, sabiendo que se hace un descuento de
acuerdo a la siguiente tabla:
precio (Bs.)
> 10
<= 10
by Dpto de Programacion y Tecnologia Educativa UNIMET is licensed under a Creative
Commons Reconocimiento-NoComercial-SinObraDerivada 3.0 Unported License.
descuento (%)
6
5
mrodriguez@unimet.edu.ve
15. Codificación en VBA:
by Dpto de Programacion y Tecnologia Educativa UNIMET is licensed under a Creative
Commons Reconocimiento-NoComercial-SinObraDerivada 3.0 Unported License.
Estructuras de
Repetición
mrodriguez@unimet.edu.ve
16. Estructuras de
Repetición
Si a este enunciado le agregamos :
Se desea un total de los montos a pagar
por todos los productos.
¿Cómo calculamos ese monto total?
Deberíamos sumar cada uno de los montos a pagar por
producto a medida que los vayamos calculando.
by Dpto de Programacion y Tecnologia Educativa UNIMET is licensed under a Creative
Commons Reconocimiento-NoComercial-SinObraDerivada 3.0 Unported License.
mrodriguez@unimet.edu.ve
17. Estructuras de
Repetición
by Dpto de Programacion y Tecnologia Educativa UNIMET is licensed under a Creative
Commons Reconocimiento-NoComercial-SinObraDerivada 3.0 Unported License.
mrodriguez@unimet.edu.ve
18. Estructuras de
Repetición
Y si además le agregamos :
Se desea saber cuanto clientes fueron
atendidos.
¿Cómo contamos?
Utilizando una variable especial que llamamos contador a la
cual le sumamos 1 en cada vuelta del ciclo de cálculo.
by Dpto de Programacion y Tecnologia Educativa UNIMET is licensed under a Creative
Commons Reconocimiento-NoComercial-SinObraDerivada 3.0 Unported License.
mrodriguez@unimet.edu.ve
19. Estructuras de
Repetición
by Dpto de Programacion y Tecnologia Educativa UNIMET is licensed under a Creative
Commons Reconocimiento-NoComercial-SinObraDerivada 3.0 Unported License.
mrodriguez@unimet.edu.ve
20. Estructuras de
Repetición
El reporte de los acumuladores y
contadores se debe hacer
siempre al finalizar el ciclo while
by Dpto de Programacion y Tecnologia Educativa UNIMET is licensed under a Creative
Commons Reconocimiento-NoComercial-SinObraDerivada 3.0 Unported License.
mrodriguez@unimet.edu.ve
21. Estructuras de
Repetición
Y si además le agregamos :
Se desea saber conocer el monto
promedio en Bs pagado por cliente.
¿Cómo lo calculamos?
Para calcular el promedio debemos dividir el monto total
pagado por los clientes entre el numero de clientes
atendidos, este cálculo se hace al salir del ciclo:
Prom = acuMonto/cont
by Dpto de Programacion y Tecnologia Educativa UNIMET is licensed under a Creative
Commons Reconocimiento-NoComercial-SinObraDerivada 3.0 Unported License.
mrodriguez@unimet.edu.ve
22. Estructuras de
Repetición
by Dpto de Programacion y Tecnologia Educativa UNIMET is licensed under a Creative
Commons Reconocimiento-NoComercial-SinObraDerivada 3.0 Unported License.
mrodriguez@unimet.edu.ve
23. Estructuras de
Repetición
Pasemos ahora a estudiar las repeticiones indexadas….
by Dpto de Programacion y Tecnologia Educativa UNIMET is licensed under a Creative
Commons Reconocimiento-NoComercial-SinObraDerivada 3.0 Unported License.
mrodriguez@unimet.edu.ve