MN
Current course
Participants
General
Topic 1
Topic 2
Topic 3
Topic 4
Topic 5
Topic 6
Topic 7
Aplicar las estructuras de control selectiva: simple (si - entonces) (D) y múltiple (según sea) (D)
La especificación formal de algoritmos tiene realmente utilidad cuando el algoritmo requiere una descripción más complicada que una lista sencilla de instrucciones. Este es el caso cuando existen un número de posibles alternativas resultantes de la evaluación de una determinada condición. Estas estructuras se utilizan para tomar decisiones lógicas (estructuras de decisión o alternativas).
La representación se hace con el pseudocódigo if, then, else o bien es español si, entonces, si_no. Las estructuras selectivas o alternativas pueden ser:
Simples. si - entonces (if - then), esta estructura ejecuta una determinada acción cuando se cumple una determinada condición. Esta selección evalúa la condición y: a) si la condición es verdadera, entonces se ejecuta la acción, o b) si la condición es falsa, no se hace nada.
|
|
|
|
||
| si <condición> entonces | if <condición> then | ||
| |
<acción 1> . . . <acción n> |
|
<acción 1> . . . <acción n> |
| fin_si | endif | ||
|
Sintaxis en PASCAL
|
Sintaxis en C/C++
|
||
|
if (condición) then begin |
if (condición) { |
||
| |
sentencias
|
|
sentencias
|
| end; | } | ||
| |
|
||
Dobles. La estructura anterior es muy limitada y normalmente se necesitará una estructura que permita elegir entre dos opciones o alternativas posibles, en función del cumplimiento o no de una determinada condición. Si la condición es verdadera se ejecuta la acción uno, si es falsa se ejecuta la acción dos.
![]() |
|
|
|||
| si <condición> entonces | if <condición> then | |||
| |
<acción 1> |
|
<acción 1> |
|
| si_no | else | |||
| |
<acción 2> |
|
<acción 2> |
|
| fin_si | endif | |||
|
Sintaxis en PASCAL
|
Sintaxis en C/C++
|
|||
|
if (condición) then |
if (condición) { |
|||
| |
begin | |||
| |
|
grupo sentencias 1 | |
grupo sentencias 1 |
|
|
end |
} else { |
||
| else | ||||
| |
begin | |||
| |
|
grupo sentencias 2 | |
grupo sentencias 2 |
| |
end; | } | ||
| |
|
|||
Múltiples. Con frecuencia es necesario que existan más de dos elecciones posibles. Se evaluará una expresión que podrá tomar n valores distintos. Según se elija uno de estos valores, se realizará una de las n acciones, o lo que es igual, el flujo del algoritmo seguirá un determinado camino entre los n posibles.
![]() |
|
|
|||
| según_sea expresión (E) hacer | case expresión of | |||
| |
e1: accion(es)1 e2: accion(es)2 en: accion(es)n si_no accion(es)x |
|
[e1]: accion(es)1 [e2]: accion(es)2 [en]: accion(es)n otherwise accion(es)x |
|
| fin_según | end_case | |||
|
Sintaxis en PASCAL
|
Sintaxis en C/C++
|
|||
|
switch (expresión) { |
||||
| |
|
case valor1 |
||
|
sentencia1 sentencia 2 . . break |
||||
| case valor2 | ||||
|
sentencia1 sentencia 2 . . break . . |
||||
| default | ||||
|
sentencia1 sentencia 2 . . |
||||
| |
} | |||
| |
|
|||