Capítulo Octavo


Fundamentos de Programación

  1. Fundamentos de Programación (II)

  2. Visual Basic incorpora estructuras de control que permiten controlar el flujo de la ejecución de un programa.
    Si no existen esta estructures el código se ejecutará de arriba hacia abajo y de derecha a izquierda según lo hayas escrito.
    Entre las estructuras de control cabe citar las estructuras de decisión y las estructuras de repetición.
    La instrucción If-Then-Else, es la estructura clásica de decisión y presenta la siguiente síntaxis:

    If condici&oacuten1 Then
    [instrucciones]
    [ElseIf condición2 Then
    [instrucciones]]
    ...
    [Else
    [instruccionesN]
    End If

    Donde los corchetes representan partes opcionales de la intrucción. Además es posible que existan más de una cláusula ElseIf en la misma instrucción If-Then-Else, por ello los puntos suspensivos.
    Si la condición 1 se cumple, entonces se ejecutará el bloque de instrucciones 1, en caso contrario se ejecutará el bloque de instrucciones (2...N-1) de la primera cláusula ElseIf condición se cumpla. Si finalmente no se cumple ninguna de las condiciones se ejecutaría el bloque de instrucciones N correspondiente a la cláusula Else.
    La condición es una expresión, es decir, un conjunto de palabras que se evalúan a verdadero o falso sin posibilidad de poder tener otro valor. Se dice que una condición se cumple cuando se evalúa a verdadero y que fracasa en caso contrario. Las condiciones también se conocen como expresiones lógicas.

    Vamos a ver un ejemplo:

    El código sería:
    Dim moneda
    moneda = lstMoneda.ListIndex
    If moneda = 0 Then
    MsgBox "Peseta"
    ElseIf moneda = 1 Then
    MsgBox "D&oacutelar"
    ElseIf moneda = 2 Then
    MsgBox "Franco"
    End If

    Se utiliza una variable para establecer el valor de una propiedad que indica que la opción del cuadro de lista lstMoneda está seleccionado.
    Una vez conocida la opción seleccionada, deberemos sacar el mensaje adecuado, para ello necesitamos una estructura de decisión.
    La intrucción de la cláusula Else, sólo se ejecuta cuando el resto de condiciones han fracasado. Cualquiera de los bloques de instrucción puede contener un número arbitrario de instrucciones, incluida la posibilidad de que existan otras instrucciones If-Then-Else.
    Cuando existe un gran número de instrucciones a evaluar es aconsejable utilizar otra estructura de decisión, como puede ser las instrucción Select Case.
    Esta instrucción no dá más potencia al lenguaje, pero hace que el código sea más legible y eficiente. La síntaxis de la instrucción Select Case es:

    Select Case expresi&oacutenDeComparaci&oacuten
    [Case listaExpresiones]
    [intrucciones]
    ...
    Case Else
    [intruccionesN]
    End Select

    Volvamos al ejemplo anterior pero con la instrucción Select Case:

    Select Case moneda
    Case 0
    MsgBox "Pesetas"
    Case 1
    MsgBox "D&oacutelar"
    Case 2
    MsgBox "Franco"
    End Select

    Además, la lista de expresiones de cada cláusula Case puede ser mucho más complicada, refiriéndose a más de un valor o rango de valores:
    Case 1 To 9 valores desde el 1 hasta 3l 9
    Case 1,2,3 valores 1, 2 y 3
    Case 1,2,5 To 12 valores 1, 2 y desde el 5 hasta el 12
     

  3. Expresiones Lógicas

  4. Visual Basic incorpora una serie de operadores de comparación que nos son útiles a la hora de establecer condiciones.
    =......Igual a
    <>....Distinto a
    <.....Menor que
    >.....Mayor que
    <=....Menor o igual que
    >=....Mayor o igual que

    Además existen los llamados operadores lógicos, que nos permiten establecer condiciones que dependadan de más de un criterio de selección.
    Todos los operadores hacen que la expresión en la que se encuentren se evalúa a verdadero o falso, sin posibilidad de cualquier otro valor.
    Estas expresiones son:

    And: exp1 And exp2, donde se evalúa a verdadero s&oacutelo en el caso que el exp1 como exp2 se evalúen a verdadero. En cualquier otro caso se evalúa a falso.
    Or: exp1 Or exp2, donde se evalúa a verdadero cuando alguna de las expresiones exp1 o exp2 se evalúa a verdadero.
    Not: Not exp1. aquí se evalúa a verdadero si exp1 es falso y se evalúa a falso si exp1 es verdadero.
    Xor: exp1 Xor exp2, se evalúa a verdadero sólo en el caso de que una y sólo una de las expresiones exp1 o exp2 se evalúa a verdadero.

  5. Matiz de Controles


  6. Un array o matriz de controles es un grupo de controles que comparten el mismo nombre, tipo y conjunto de procedimientos de evento.
    El número de controles que puede contener un array es indeterminado y depende de los recursos y memoria.
    La matriz de controles se crea en tiempo de diseño aunque en tiempo de ejecución se pueden agregar más controles a la matriz.
    Para crear una matriz de controles, tienes que crear dos controles del mismo nombre, Visual Basic reconoce está situación y preguntará si quieres crear una matriz de controles.
    Cuando se crea una matriz de controles puedes seguir trabajando con cada uno de los controles de forma individual. Para referirte a un control en particular tienes que utilizar la propiedad Index de dicho control. La propiedad se establece con el valor 0 para el primer control y se va incrementando a medida que se van creando los nuevos controles.
    Si quieres crear nuevos controles en tiempo de ejecución tienes que utilizar la instrucción Load. La síntaxis será la siguiente:

    Load objeto(índice)

    Donde el objeto se refiere al nombre del control original que dio paso al control de la matriz e índice es el lugar que ocupará en la matriz.
    De la misma forma se puede eliminar un control en tiempo de ejecución, pero esta vez usando la instrucción Unlaod.

  7. Estructuras de Repetición


  8. Otro tipo de estructuras que pueden modificar la ejecución de un programa son las estructuras de repetición o bucles. Estas estructuras sirven para repetir una y otra vez un conjunto de instrucciones.
    Existirán dos tipos de estructuras de repetición: aquellas en las que se conoce el número de repeticiones y aquellas en que dicho número se establece durante la ejecución.
    La estructura de repetición For...Next es adecuada cuando conocemos el número de veces que debe repetirse un conjunto de instrucciones y deseamos reducir la cantidad de código escrito.
    La síntaxis es la siguiente:

    For contador = principio To fin [Strep incremento]
    [instrucciones]
    [Exit For]
    [Instrucciones]
    Next [contador]

    Donde el contador es el nombre de una variable que sirve como contador de las veces que se tiene que ejecutar el bucle. A dicha variable se le asigna un valor incial y un valor final en el que una vez superado el bucle no vuelve a repetirse.
    En el cuerpo del bucle estarán las instrucciones que deben ejecutarse existiendo la posibilidad de introducir Exit For para salir del bucle.
    Otra estructura de repetición es Do...Loop. Esta estructura se utiliza cuando desconocemos cuántas veces se ha de ejecutar el bucle.
    La síntaxis es:

    Do [While|Until] condición
    [instrucciones]
    [Exit Do]
    [intrucciones]
    Loop

    Si utilizamos While el bucle se repite mientras la condición se cumpla y si utilizamos Until el bucle se repetirá hasta que la condición dé valor verdadero.
    Con While, la condición es comprobada al principio del bucle, por lo que si no se cumple al iniciarse, el cuerpo del bucle no se ejecutará. Con Until se comprueba a la salida del bucle, por lo que por lo menos, una vez se ejecutará el bucle.


    Fundamentos de Programación ICapítulo 7 Capítulo 9En construcción

    Pedro José Gascón Moya E-mail

Volver a la página inicial