La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Applications Development I 6.1 Foro Tomas Anzalotta Alvarado.

Presentaciones similares


Presentación del tema: "Applications Development I 6.1 Foro Tomas Anzalotta Alvarado."— Transcripción de la presentación:

1 Applications Development I 6.1 Foro Tomas Anzalotta Alvarado

2 Son estructuras de repetición que ejecutan una o más instrucciones durante la cantidad de veces que esté determinado en la condición o expresión del ciclo. Son el ciclo Do while y Do Until Pueden ser escritos de forma tal que la condición o expresión se haga antes de entrar a las instrucciones del ciclo En el Do While, se ejecutan las instrucciones mientras sea cierta la expresión de control ¿ Qué son los ciclos?

3 Ejemplo: Private Sub Command1_Click( ) Dim Control as Long On Error Resume Next Control = Text1.Text Form1.BackColor = vbWhite Do While Control <> 0 Label2.Caption = “Valor: ” & Control If Form1.BackColor = vbWhite Then Form1.BackColor = vbRed Else Form1.BackColor = vbWhite End If Control = Text1.Text DoEvents Loop MsgBox “Loop completado” End Sub En el ejemplo presentado, la forma cambiará de color blanco a rojo y viceversa mientras el texto de Text1 sea diferente a cero (0). Tan pronto el valor del texto sea igual a cero, el ciclo terminará su ejecución. Se utiliza la línea On Error Resume Next para indicarle a Visual Basic que siga ejecutando la forma, aún cuando ocurra un error de ejecución. Esta instrucción es necesaria dado que en el ciclo Do While se lee continuamente el texto del Text1. Si la línea On Error Resume Next no se escribe y en algún momento se borra el texto para escribir otro valor, Visual Basic daría error al leer el texto en ese instante

4 . Do While Control <> 0 La expresión de control es Control <> 0. Esta es la expresión que controla el ciclo. Al ser evaluada, solo puede tomar el valor de True (cierto) o False (falso). Dependiendo de ese valor, es ejecutado el ciclo. Si el valor es True, las instrucciones dentro del ciclo se ejecutan. Si el valor es False, se ejecuta la instrucción que le sigue a la línea Loop. Se conoce también como “boolean expression”. línea DoEvents L e indica a Visual Basic que en cada loop o ciclo espere unos segundos para recibir mensajes a través de Windows. Sin esta línea, el Do While se ejecutaría tan rápido que no sería posible hacer alguna entrada (input) al proyecto, asumiendo que sea necesario el “input” en el ciclo (como en el ejemplo). línea Loop Indica el final de las instrucciones que están dentro del Do While loop. En este punto, Visual Basic regresa a la línea donde comienza el Do While y verifica la expresión de control. Si todavía es cierta la expresión, el ciclo se ejecuta nuevamente

5 En el Do Until, se ejecutan las instrucciones hasta que la expresión de control sea cierta. Ejemplo Private Sub Command1_Click( ) Dim Control as Long On Error Resume Next Control = Text1.Text Form1.BackColor = vbWhite Do Until Control = 0 Label2.Caption = “Valor: ” & Control If Form1.BackColor = vbWhite Then Form1.BackColor = vbRed Else Form1.BackColor = vbWhite End If Control = Text1.Text DoEvents Loop MsgBox “Loop completado” End Sub En el ejemplo, las instrucciones dentro del Do Until se ejecutan hasta que el valor entrado en el texto del Text1 sea igual a cero. Se debe notar que la única línea que cambió fue la línea del Do Until. Las otras instrucciones explicadas en el Do While (On Error Resume Next, DoEvents y Loop) cumplen las mismas funciones en el Do Until.

6 Diferencia entre Do While y el Do Until En el Do While el ciclo se ejecuta mientras la expresión de control es cierta en el Do Until el ciclo se ejecuta hasta que la expresión de control sea cierta.

7 Ciclos condicionales fijos (For-Next y For-Each) For...Next repite un conjunto de instrucciones un número fijo de veces. Una Instrucción While...End While (Visual Basic) o una Instrucción Do...Loop (Visual Basic) funciona bien cuando no se sabe de antemano cuántas veces se necesita ejecutar las instrucciones del bucle.Instrucción While...End While (Visual Basic) Instrucción Do...Loop (Visual Basic) Sin embargo, cuando espere ejecutar el bucle un número concreto de veces, For...Next es una mejor elección. Determina el número de iteraciones cuando se entra en el bucle por primera vez.

8 En el ejemplo siguiente se muestran estructuras For...Next anidadas con valores de incremento diferentes Dim words, digit As Integer Dim thisString As String = "“ For words = 10 To 1 Step -1 For digit = 0 To 9 thisString &= CStr(digit) Next digit thisString &= " " Next words En este ejemplo se crea una cadena que contiene 10 instancias de los números del 0 al 9, donde cada cadena está separada de la siguiente por un único espacio en blanco. El bucle externo disminuye una variable de contador del bucle cada vez que se recorre el bucle.

9 Ejemplo Dim found As Boolean = False Dim thisCollection As New Collection For Each thisObject As String In thisCollection If thisObject = "Hello" Then found = True Exit For End If Next thisObject Dim found As Boolean = False Dim thisCollection As New Collection For Each thisObject As String In thisCollection If thisObject = "Hello" Then found = True Exit For End If Next thisObject Utilice un bucle For Each...Next cuando desee repetir un conjunto de instrucciones para cada elemento de una colección o matriz. Una Instrucción For...Next (Visual Basic) funciona bien cuando se puede asociar cada iteración de un bucle con una variable de control y determinar los valores iniciales y finales de esa variable.Instrucción For...Next (Visual Basic) Cuando se trata de colecciones, el concepto de valores iniciales y finales no es significativo, y no siempre se sabe cuántos elementos tiene la colección. En este caso, el bucle For Each...Next es la mejor opción. For Each…Next


Descargar ppt "Applications Development I 6.1 Foro Tomas Anzalotta Alvarado."

Presentaciones similares


Anuncios Google