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