SWITCH..CASE..SWEND

Sintaxis

SWITCH expr

CASE valor;

CASE valor;

CASE DEFAULT;

SWEND

Descripción

El comando SWITCH es una construcción multidecisión que evalúa si expr es igual a valor

y realizar las instrucciones del bloque CASE. En comparación con usar múltiples comandos IF, SWITCH permite fácilmente (aunque no más rápido) procesar las instucciones. La construcción ON..GOTO es más rápido que SWITCH cuando son muchos valores constantes que evaluar.

Los parámetros expr y valor puede ser cualquier expresión que de como resultado un valor entero (el rango va desde 0 a 32767). Las expresiones se comparan por igualdad en líneas sucesivas partiendo con la primera instrucción CASE. Cuando se encuentra una igualdad, la ejecución continúa despues de la expresión CASE. Si el programa encuentra un instrucción CASE DEFAULT antes de dar con una igualdad en valor, se ejecuta el código siguiente a CASE DEFAULT.

Al comando SWITCH solo puede ser seguidopor un REM. Debe existir una instrucción SWEND por cada SWITCH. La instrucción CASE se termina con EXITTO o BREAK. Si no se encuentra una de éstas instrucciones después, entonces la ejecución continúa en la siguiente instrucción CASE.

Ejemplos

1010 SWITCH CTL

1020 CASE 0

1030 CASE 1; EXITTO 2000

1040 CASE 2; LET CAMPO=CAMPO-1; BREAK

1050 CASE 3; LET CAMPO=1; EXITTO 6000

1060 CASE 4; LET CAMPO=1000; EXITTO 6000

1070 CASE DEFAULT; BREAK

1080 SWEND; GOTO 1000