Alternativas múltiples según sea, caso de case

Cuando existen más de dos elecciones (alternativas) posibles, es cuando se presenta el caso de alternativas múltiples. Si el número de alternativas es grande puede plantear serios problemas de escritura del algoritmo y naturalmente de legibilidad.

La estrucura de decisión múltiple evaluará una expresión que podrá tomar n valores distintos 1,2,3,4,..n . Según que elija uno de estos valores en la condición, se realizaráa una de las n acciones, o lo que es igual, el flujo del algoritmo seguirá un determinado camino entre los n posibles.

La representación gráfica se muestra a continuación:

Diagrama de Flujo

Diagrama de Flujo alternativas multiples
Diagrama N-S

Modelo 1                                                              Modelo 2

Diagrama N-S Modelo 1                        Diagrama N-S Modelo 2

Pseudocódigo

 En inglés la estructura de decisión múltiple se representa

Case expresión of

[e1]: acción S1

[e2]: acción S2

:

[en]: acción Sn

else

acción Sx

end_case

Ejemplo:

Se desea diseñar un algoritmo que escriba los nombres de los días de la semana en función del valor de una variable DIA introducida por teclado.

Los días de la semana son 7; por consiguiente, el rango de valores de DIA será 1..7, y caso de que DIA tome un valor fuera de este rango se deberá producir un mensaje de error advirtiendo la situación anómala.

Inicio

Leer DIA

Según_sea DIA hacer

1: escribir(‘Lunes’)

2: escribir(‘Martes’)

3: escribir(‘Miércoles’)

4: escribir(‘Jueves’)

5: escribir(‘Viernes’)

6: escribir(‘Sabado’)

7: escribir(‘Domingo’)

else

escribir(‘Error’)

fin_según

fin