Cómo usar If, Lbl e Goto a para controlar el flujo del programa
El comando Si y varias estructuras de For...EndFor le permiten ejecutar una sentencia o bloque de sentencias en forma condicional; esto es, con base en el resultado de una prueba (como x>5). Lbl (etiqueta) e Goto le permiten ramificar, o saltar, desde un lugar hasta otros en una función o un programa.
El comando If y varias estructuras If...EndIf residen en el menú de Control del Editor de Programas.
Cuando usted inserta una estructura como If...Then...EndIf, se inserta una plantilla en la ubicación del cursor. El cursor se posiciona de manera que usted puede ingresar una prueba condicional.
Comando If
Para ejecutar un comando sencillo cuando una prueba condicional es verdadera, use la forma general:
|
À |
Se ejecuta sólo si x>5; de otro modo, se salta. |
|
Á |
Siempre despliega el valor de x. |
En este ejemplo, usted debe almacenar un valor para x antes de ejecutar el comando If .
Estructuras If...Then...EndIf
Para ejecutar un grupo de comandos si una prueba condicional es verdadera, use la estructura:
|
À |
Se ejecuta sólo si x>5. |
|
Á |
Despliega el valor de: |
Nota: EndIf marca el final del bloque Then que se ejecuta si la condición es verdadera.
Estructuras If...Then...Else...EndIf
Para ejecutar un grupo de comandos si una prueba condicional es verdadera y un grupo diferente si la condición es falsa, use esta estructura:
|
À |
Se ejecuta sólo si x>5. |
|
Á |
Se ejecuta sólo si x{5. |
|
 |
Despliega el valor de: |
Estructuras If...Then...ElseIf... EndIf
Una forma más compleja del comando If le permite probar varias condiciones. Supongamos que usted desea un programa para probar un argumento suministrado por el usuario que significa una de cuatro opciones.
Para probar cada opción (Si Opción=1, Si Opción=2 y así sucesivamente), use la estructura If...Then...ElseIf...EndIf.
Comandos Lbl y Goto
Usted también puede controlar el flujo al usar los comandos Lbl (etiqueta) e Goto (Ir a) . Estos comandos residen en el menú Transferencias del Editor de Programas.
Use el comando Lbl para etiquetar (asignar un nombre a) una ubicación en particular en la función o el programa.
|
Lbl nombre de Etiqueta |
nombre para asignar a esta ubicación (use la misma norma de nombrado como un nombre de variable) |
Entonces usted puede usar el comando Ir a en cualquier punto de la función o del programa para ramificar hacia la ubicación que corresponde a la etiqueta especificada.
|
Goto nombre de Etiqueta |
especifica a cuál comando Lbl a ramificar |
Dado que un comando Goto es incondicional (siempre se ramifica a la etiqueta especificada), con frecuencia se usa con un comando If de manera que usted puede especificar una prueba condicional. Por ejemplo:
|
À |
Si x>5, se ramifica directamente a la etiqueta GT5. |
|
Á |
Para este ejemplo, el programa debe incluir comandos (como Stop) que previenen que Lbl GT5 se ejecute si x{5. |