viernes, 8 de agosto de 2008

Sentecnias de control

Las sentencias de control permiten evaluar condiciones y en base al resultado tomar la decisión de seleccionar entre varias alternativas posibles el flujo correcto.

If - Then

Se utiliza la sentencia If - Then cuando se necesita tomar una decisión dada la evaluación de una expresión para elegir más de 1 alternativa posible.

La sentencia If - Then se evalua cuando una condición es verdadera (True) o falsa (False).

Sintaxis:

   If condición Then cláusula 

El ejemplo anterior no requiere del uso de la sentencia End If, si sólo a continuación existe una línea de código, si es más de una línea de código utilice:

   If condición Then
[sentencias]
End If

If - Then - Else

La sentencia If - Then - Else es un concepto elaborado de la sentencia If - Then. Un bloque If - Then - Else permite definir 2 bloques de código y sólo un bloque se ejecutará dependiendo el resultado de una condición.

Sintaxis:

   If condición Then
[sentencias]
Else
[sentencias]
End If

If - Then - ElseIf

La sentencia If - Then - ElseIf permiten ejecutar 1 bloque de código de varios bloques posibles. Esta sentencia lógicamente es igual que la sentencia Select - Case.

Sintaxis:

   If condición1 Then
[sentencias]
ElseIf condición2 Then
[sentencias]
ElseIf condición3 Then
[sentencias]
Else
[sentencia por default] 'Si ninguna de las condiciones anteriores se cumple
End If

Select - Case

Se recomienda emplear la sentencia Select - Case en vez de utilizar una sentencia If - Then cuando esta tiene más de 2 condiciones a evaluar. La estructura de una sentencia Select - Case es similar a la estructura de la sentencia If - Then - ElseIf.

La sentencia Select - Case permiten al programa seleccionar más de 2 alternativas, donde la evaluación de la expresión se realiza sólo una vez y es comparado contra los múltiples valores posibles para determinar cual bloque de código es ejecutado.

Sintaxis:

   Select Case condicionAevaluar
[Case expresion1]
[sentencias]
[Case expresion2]
[sentencias]
[Case expresion3]
[sentencias]
[Case Else]
[sentenciasDefault]
End Select

Do - Loop

La estructura Do - Loop proporciona al programa la habilidad de ejecutar un bloque de código un número indeterminado de veces mientras se cumpla una condición.

Esta sentencia tiene 2 categorias:

  1. Donde la expresión es evaluada al final del ciclo, por lo que se asegura que el código se ejecuta al menos 1 vez.

    Do - Loop While

    La estructura Do - Loop While evalua la condición después de ejecutar el código y repetir su ejecución hasta que la evaluación de la condición sea false.

     Do
    [sentencias]
    Loop While [condición]

    Ejemplo:

        iCount = 0
    Do
    MsgBox iCount
    iCount = iCount + 1
    Loop While iCount < 0

    Do - Loop Until

    La estructura Do - Loop Until evalua la condición después de ejecutar el código y repetir su ejecución hasta que la evaluación de la condición sea True.

     Do
    [sentencias]
    Loop Until [condición]

    Ejemplo:

        iCount = 0
    Do
    MsgBox iCount
    iCount = iCount + 1
    Loop Until iCount > 0
  2. Donde la expresión es evaluada al principio del ciclo, sólo si se cumple la condición el código se ejecuta.

    Do While - Loop

    La estructura Do While - Loop evalua la condición antes de ejecutar el código. El código del bloque sólo es ejecutado si la evaluación de la condición es True y repite la ejecución hasta que la expresión sea evaluada como False.

    Emplee esta sentencia en aquellos casos donde no se conoce de antemano cuantas veces debe ejecutarse el bloque de código y entonces la condición determina cuando debera de pararse la ejecución del bloque de código.

     Do While condición
    [sentencias]
    Loop

    Ejemplo:

        iCount = 0
    Do While iCount < 0
    MsgBox iCount
    iCount = iCount + 1
    Loop

    Do Until - Loop

    La estructura Do Until - Loop evalua la condición antes de ejecutar el código. El código del bloque sólo es ejecutado si la evaluación de la condición es False y repite la ejecución hasta que la expresión sea evaluada como True.

     Do Until condición
    [sentencias]
    Loop

    Ejemplo:

        iCount = 0
    Do Until iCount = 0
    MsgBox iCount
    iCount = iCount + 1
    Loop

For - Next

La sentencia For - Next se emplea cuando se conoce anticipadamente cuantas veces deberá ejecutarse un bloque de código, esto es posible ya que se utiliza un contador que mantiene y controla el número de veces que se ejecuta el bloque.

Sintaxis:

   For counter = valorInicial To valorFinal [incremento positivo|negativo]
[sentencias]
Next[Counter]

For Each - Next

For Each es similar a For - Next a diferencia que repite un grupo de instrucciones por cada elemento de una colección de objetos, en vez de repetir las instrucciones un número especifico de veces.

Sintaxis:

   For Each elemento In grupo
[sentencias]
Next

Sentencia Exit

La sentencia Exit permite salir de un ciclo, procedimiento, función, su sintaxis es simple, después de escribir la sentencia Exit escriba el nombre de la sentencia de la cual desea salir, ejemplo:

   Exit For
Exit Do

0 comentarios: