Sei sulla pagina 1di 4

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA UNAD

ESCUELA DE CIENCIAS BASICAS TECNOLOGIA E INGENIERA


CONTENIDO DIDCTICO DEL CUSO: 301303 ALGORITMO

Estructuras de seleccin
Las estructuras de seleccin son estructuras de control utilizadas para la toma
decisiones dentro de un programa. A estas estructuras se conocen tambin como
estructuras selectivas o estructuras de decisin y son las siguientes:

La estructura de seleccin simple (SI).


La estructura de seleccin doble (SI-SINO).
Estructura de Seleccin doble en Cascada SI-SINO-SI

La estructura de seleccin simple


Permite ejecutar una accin o un grupo de acciones slo si se cumple una
determinada condicin.
Si (condicional)
Sentencia 1
Sentencia 2

Fin _si
Ejemplo Determinar si un nmero es positivo
1. algoritmo Positivo // nombre del Algoritmo
2. var
3. a: entero
// Capturar el valor del nmero desconocido
4. inicio
5.
Escriba(Por Favor entre un nmero) // Mensaje
6.
Lea(a)
// Captura Valor
7.
si (a>0)
// Condicional para determinar si el # es positivo (todos los > 0)
8.
escriba(El Nmero es positivo )// Mensaje de aviso que
9.
fin_si // Toda condicin termina con un fin de condicin
10. Fin // todo algoritmo tiene un fin porque una de las caractersticas es que es
finito
Estructura de seleccin doble
Permite seleccionar una ruta de dos rutas posibles en base a la verdad o falsedad
de una condicin.
Si (condicional)
Sentencia 1

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA UNAD


ESCUELA DE CIENCIAS BASICAS TECNOLOGIA E INGENIERA
CONTENIDO DIDCTICO DEL CUSO: 301303 ALGORITMO

Sentencia 2

Si_no
Sentencia 1
Sentencia 2

Fin_fi
El siguiente ejemplo ilustra el manejo de condicionales
Ejemplo 2
Determinar cul de 2 nmeros es mayor
1. algoritmo mayor
2. var
3. a,b: entero;
4. inicio
5.
Escriba(Por Favor entre un nmero);
6.
Lea(a);
7.
Escriba(por favor entre el segundo nmero);
8.
lea (b);
9.
si (a>b)
10.
escriba(El mayor de los nmeros es: ,a);
11. sin_no
12.
escriba(El mayor de los nmeros es: ,b);
13. fin_si
14. fin
Comentarios
Lnea 9: los condicionales que se representaban como,
expresamos como un SI(),

ahora

lo

Lnea 11: para este ejerci, la sentencia si_no representa caso contrario
Lnea 13: Toda instruccin Si, debe terminar con un fin_si, para indicar hasta
donde va ese condicional.
La estructura de seleccin doble en cascada est formada por varias estructuras
de seleccin doble SI-SINO puestas una a continuacin de otra de forma que a un
SI-SINO le sigue otro SI-SINO.
En la estructura de seleccin doble en cascada, las condiciones se evalan orden
descendente, pasando de una condicin a otra si la condicin anterior resulta
falsa. En el momento que se encuentra una condicin verdadera, se efecta
accin correspondiente a dicha condicin se corta el resto de la estructura. Si

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA UNAD


ESCUELA DE CIENCIAS BASICAS TECNOLOGIA E INGENIERA
CONTENIDO DIDCTICO DEL CUSO: 301303 ALGORITMO

todas las condiciones resultan falsas, se efectuar acciones correspondientes al


SINO, que se considera como la accin por defecto.
SI( condicional1 )
accion1
SINO SI( condicional2 )
accion2
SINO SI( condicional3 )
accion3
.
.
.
SINO
.
Ejemplo 3
Variacin del ejercicio anterior, que pasa si los nmeros son iguales
Entonces una posible solucin es la siguiente
1. Algoritmo mayor_v1
2. var
3. a,b:entero
4. inicio
5. Escriba(Por Favor entre un nmero);
6. Lea(a);
7. Escriba(por favor entre el segundo nmero);
8. Lea (b);
9. Si (a=b)
10.
escriba (los Nmeros son Iguales);
11. fin_si
12. Si (a>b)
13.
escriba (El mayor es :, a);
14. fin_si
15. Si (a<b)
16.
escriba(el mayor es :,b);
17. fin_si
18. fin
Por favor discuta y analice con su compaeros de grupo, porque en este ejercicio
se emplearon 3 condicionales?, Existen otras formas de resolverlo?

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA UNAD


ESCUELA DE CIENCIAS BASICAS TECNOLOGIA E INGENIERA
CONTENIDO DIDCTICO DEL CUSO: 301303 ALGORITMO

Existe otra forma de representar las sentencias de seleccin en cascada, es


mediante la utilizacin de la sentencia CASE (Caso), esto es para cada
condicional se representa mediante un caso, retomemos el ejerci anterior y
analicemos como se construye con esta instruccin
Ejemplo empleado Case
1. Algoritmo mayor_v1_case
2. var
3. a,b:entero
4. inicio
5. Escriba(Por Favor entre un nmero);
6. Lea(a);
7. Escriba(por favor entre el segundo nmero);
8. Lea (b);
9. Case 1 (a=b)
10.
escriba (los Nmeros son Iguales);
11.
Case 2 (a>b)
12.
escriba (El mayor es :, a);
13.
Case 3 a<b
14.
escriba(el mayor es :,b);
15. fin_case
16. fin
Como se puede observar la sentencia case permite evaluar en cascada las
condiciones requeridas. Ahora es decisin de cada uno su utilizacin.
Ejercicios de Verificacin
Desarrollar mediante algoritmos los ejercicios propuestos en el apartado de
verificacin de los diagramas de flujo. (Ejercicios de Verificacin diagramas de
fluido).
Profundizacin en los temas :
Tipos de instrucciones
Instrucciones de Asignacin
Instrucciones de Entrada
Instrucciones de Salida
Instrucciones de Decisin

Potrebbero piacerti anche