Técnico Universitario en Programación
UNIVERSIDAD TECNOLÓGICA NACIONAL
Facultad Regional Gral. Pacheco
Apuntes de clase de la asignatura
Programación I
ESTRUCTURAS SELECTIVAS
2024
Abel Oscar Faure
Lorena Raquel Palermo
UNIVERSIDAD TECNOLOGICA NACIONAL
ESTRUCTURAS SELECTIVAS
Facultad Regional Gral. Pacheco
ESTRUCTURAS ALGORÍTMICAS SELECTIVAS
Las estructuras lógicas selectivas, o de decisión, son fundamentales en la solu-
ción algorítmica de problemas. Estas estructuras permiten tomar decisiones durante
el desarrollo de un algoritmo, alterando el flujo secuencial de control según las condi-
ciones específicas. Es común que un algoritmo necesite seleccionar un camino a se-
guir y determinar qué instrucciones ejecutar basándose en la respuesta a un cuestio-
namiento. Esto hace que las estructuras selectivas sean esenciales, ya que permiten
dirigir el flujo de ejecución en función de las condiciones del problema. Por esta ra-
zón, la mayoría de los problemas incluyen alguna forma de estructura selectiva. Las
estructuras selectivas que estudiaremos en este módulo son las siguientes:
Estructura Selectiva Simple.
Estructura Selectiva Doble.
Estructuras Selectivas Anidadas.
Estructura Selectiva Múltiple.
ESTRUCTURA SELECTIVA SIMPLE
La estructura selectiva simple permite que el flujo de un diagrama siga un
camino específico si se cumple una determinada condición (expresión lógica). Si al
evaluar la condición el resultado es verdadero, se sigue ese camino y se ejecuta una
o varias acciones. En caso de que el resultado sea falso, esas acciones se omiten. En
ambos casos, el flujo del diagrama continúa de manera normal después de evaluar la
condición. La estructura selectiva simple se representa de la siguiente forma:
Página 2
UNIVERSIDAD TECNOLOGICA NACIONAL
ESTRUCTURAS SELECTIVAS
Facultad Regional Gral. Pacheco
Ejemplo:
Se desea implementar un algoritmo que lea un número entero e informe, me-
diante un mensaje, si el número es positivo. Si el número no es positivo, no se reali-
zará ninguna acción. Representar el algoritmo mediante un diagrama de flujo.
INICIO
“INGRESAR UN NÚMERO”
NUM
Expresión
Lógica
Verdadero Falso
NUM > 0
“EL NÚMERO INGRESADO
ES POSITIVO”
FIN
Como se puede observar, el proceso comienza comparando el valor asignado a
la variable NUM, el cual se debe obtener previamente mediante su lectura.
Luego, se realiza una comparación para determinar qué bloque de instrucciones
ejecutar. Si NUM es mayor que 0, se ejecutan las instrucciones del bloque verdadero,
en este caso, mostrar un mensaje indicando que el número ingresado es positivo.
Si la condición resulta falsa, se sigue el camino alternativo, donde no hay ins-
trucciones a ejecutar, concluyendo así el proceso de solución.
Página 3
UNIVERSIDAD TECNOLOGICA NACIONAL
ESTRUCTURAS SELECTIVAS
Facultad Regional Gral. Pacheco
ESTRUCTURA SELECTIVA DOBLE
A diferencia de la estructura selectiva simple, que solo actúa si la condición es
verdadera, la estructura selectiva doble ofrece dos caminos: uno para cuando la con-
dición (Expresión Lógica) es verdadera y otro para cuando es falsa. Esto permite que
el algoritmo ejecute diferentes bloques de instrucciones según el resultado de la eva-
luación de la condición (Expresión Lógica).
….
VERDADERO ¿Condición? FALSO
ACCION 1 ACCION 1
ACCION N ACCION N
….
Cómo funciona:
Se evalúa una condición (Expresión Lógica), si la condición se cumple, es decir,
si es verdadera, el algoritmo ejecuta un bloque de instrucciones específicas.
Si la condición no se cumple, es decir, si es falsa, el algoritmo ejecuta un blo-
que de instrucciones alternativo.
Después de ejecutar uno de los dos bloques, el flujo del algoritmo continúa con
la siguiente instrucción después de la estructura selectiva.
Este tipo de estructura es útil cuando es necesario manejar ambos posibles re-
sultados de una condición, asegurando que el algoritmo reaccione adecuadamente a
cualquiera de ellos.
Página 4
UNIVERSIDAD TECNOLOGICA NACIONAL
ESTRUCTURAS SELECTIVAS
Facultad Regional Gral. Pacheco
Ejemplo:
Se desea implementar un algoritmo que, al recibir el promedio de un alumno en
un curso de programación, muestre en pantalla el mensaje “APROBADO” si el prome-
dio es mayor o igual a 6, y “DESAPROBADO” en caso contrario. Representar el algo-
ritmo mediante un diagrama de flujo.
INICIO
Escribe un mensaje indicando
“INGRESAR LA NOTA PROMEDIO”
el dato a ingresar.
Se realiza la comparación si el
Lee el dato ingresado y lo guarda
PROMEDIO valor en la variable promedio
en la variable PROMEDIO.
es mayor o igual que 6 (Seis).
Si la condición resulta Si la condición resulta
verdadera, se escribe el Verdadero Falso verdadera, se escribe el
PROMEDIO >= 6
mensaje “APROBADO”. mensaje “APROBADO”.
“APROBADO” “DESAPROBADO”
FIN
ESTRUCTURAS SELECTIVAS EN SECUENCIA
Las estructuras selectivas en secuencia se refieren a la combinación de múlti-
ples estructuras selectivas que se ejecutan una tras otra en un orden específico.
En estas estructuras, cada condición (expresión lógica) se evalúa de manera in-
dependiente, y las acciones correspondientes se ejecutan en función del resultado de
cada evaluación.
En una estructura selectiva en secuencia, el algoritmo pasa por varias decisio-
nes consecutivas. Cada condición se evalúa secuencialmente, y su bloque de instruc-
ciones se ejecuta si la condición es verdadera.
Página 5
UNIVERSIDAD TECNOLOGICA NACIONAL
ESTRUCTURAS SELECTIVAS
Facultad Regional Gral. Pacheco
No hay dependencia directa entre las decisiones, por lo que todas las condicio-
nes se evalúan siempre, una tras otra.
….
VERDADERO ¿Condición? FALSO
ACCION 1
ACCION N
VERDADERO ¿Condición? FALSO
ACCION 1
ACCION N
….
Ejemplo:
Se desea implementar un algoritmo que reciba un número entero e informe,
mediante un mensaje, si el número es positivo, negativo o cero. Representar el algo-
ritmo mediante un diagrama de flujo.
Página 6
UNIVERSIDAD TECNOLOGICA NACIONAL
ESTRUCTURAS SELECTIVAS
Facultad Regional Gral. Pacheco
INICIO
Escribe un mensaje indicando
“INGRESAR UN NÚMERO”
el dato a ingresar.
Lee el dato ingresado y lo guarda
NUM
en la variable NUM.
Se realiza la comparación si el
valor en la variable NUM es
Si la condición resulta verdadera, mayor a 0 (Cero).
se escribe el mensaje indicando Verdadero Falso
que es positivo. NUM > 0
“EL NÚMERO INGRESADO
ES POSITIVO”
Se realiza la comparación si el
Si la condición resulta verdadera, valor en la variable NUM es
se escribe el mensaje indicando Verdadero Falso menor a 0 (Cero).
que es negativo. NUM < 0
“EL NÚMERO INGRESADO
ES NEGATIVO”
Se realiza la comparación si el
valor en la variable NUM es
Si la condición resulta verdadera, igual a 0 (Cero).
se escribe el mensaje indicando Verdadero Falso
que es cero. NUM == 0
“EL NÚMERO INGRESADO
ES CERO”
FIN
En este algoritmo, se utilizan tres estructuras selectivas independientes, eva-
luadas en secuencia.
Esto significa que el algoritmo siempre verifica todas las condiciones, incluso si
una de ellas ya es verdadera. Es importante en este caso, ya que un número no pue-
de ser positivo, negativo y cero al mismo tiempo, pero la secuencia asegura que to-
das las posibles categorías sean evaluadas y la categoría correcta sea informada.
Este ejercicio es un ejemplo claro de cómo se pueden utilizar estructuras selec-
tivas en secuencia para manejar diferentes condiciones y asegurar que el algoritmo
reaccione adecuadamente según los datos de entrada.
Página 7
UNIVERSIDAD TECNOLOGICA NACIONAL
ESTRUCTURAS SELECTIVAS
Facultad Regional Gral. Pacheco
Estructuras selectivas anidadas
Las estructuras selectivas anidadas son formas avanzadas de control de flu-
jo en programación que permiten tomar decisiones más complejas al evaluar múlti-
ples condiciones.
Una estructura selectiva se considera anidada cuando se encuentra dentro de
otra. Esto permite evaluar una segunda condición solo si la primera es verdadera (o
falsa, dependiendo de la estructura), creando así un árbol de decisiones más profun-
do. Este enfoque es útil en situaciones donde la evaluación de una condición depende
del resultado de otra.
….
V ¿Condición 1? F
V ¿Condición 2? F V ¿Condición 3? F
ACCION
ACCION 1 ACCION 1
V ¿Condición 5? F
V ¿Condición 4? F
ACCION
ACCION N ACCION 1 ACCION N
ACCION 1 ACCION 1
V ¿Condición 6? F
ACCION N ACCION N
ACCION N
ACCION 1 ACCION 1
ACCION N ACCION N
….
Ejemplo:
Se desea implementar un algoritmo que reciba un número entero e informe,
mediante un mensaje, si el número es positivo, negativo o cero. Representar el algo-
ritmo mediante un diagrama de flujo.
Página 8
UNIVERSIDAD TECNOLOGICA NACIONAL
ESTRUCTURAS SELECTIVAS
Facultad Regional Gral. Pacheco
En esta solución que utiliza estructuras selectivas anidadas, la primera estructu-
ra selectiva determina si se debe continuar evaluando si el número es negativo o ce-
ro. Solo si el número no es mayor que cero, se utiliza una segunda estructura selecti-
va para precisar la naturaleza exacta del número.
Este enfoque es eficiente porque evita la evaluación de condiciones adicionales
si el número ya ha sido identificado como positivo.
Además, en la rama falsa de la segunda estructura selectiva, que verifica si el
número es menor que cero, no es necesario realizar más anidaciones. Esto se debe a
que, si el número no es mayor que cero ni menor que cero, por descarte, debe ser
cero.
Este ejercicio ilustra cómo las estructuras selectivas anidadas permiten una
evaluación jerárquica y organizada, facilitando la toma de decisiones en situaciones
en las que las condiciones están interrelacionadas.
Página 9
UNIVERSIDAD TECNOLOGICA NACIONAL
ESTRUCTURAS SELECTIVAS
Facultad Regional Gral. Pacheco
ESTRUCTURAS SELECTIVAS EN CASCADA
Las estructuras selectivas en cascada utilizan una serie de decisiones que se
evalúan una tras otra. Cada condición se revisa en un orden específico, y solo se eje-
cuta el bloque de instrucciones correspondiente a la primera condición que sea verda-
dera.
….
V ¿Condición 1? F
V ¿Condición 2? F
ACCION 1
V ¿Condición 3? F
ACCION 1
V ¿Condición 4? F
ACCION 1
ACCION 1
ACCION N V ¿Condición 5? F
ACCION N
ACCION N ACCION 1
ACCION N
ACCION N
….
Cómo funciona:
Si una condición es verdadera, se ejecuta el bloque de instrucciones asociado y
se omiten las evaluaciones de las condiciones siguientes.
Si la primera condición es falsa, se pasa a evaluar la siguiente condición en la
secuencia.
Este proceso continúa hasta encontrar una condición verdadera o llegar al final
de la lista de condiciones.
Página 10
UNIVERSIDAD TECNOLOGICA NACIONAL
ESTRUCTURAS SELECTIVAS
Facultad Regional Gral. Pacheco
En este tipo de estructura, las condiciones son mutuamente excluyentes, lo que
significa que solo una de ellas puede ser verdadera en un momento dado.
Si una condición es verdadera, las demás se consideran automáticamente fal-
sas, asegurando que solo se ejecute el bloque de instrucciones correspondiente a la
primera condición que se cumple.
Este enfoque garantiza que solo se ejecuten las instrucciones asociadas con la
primera condición verdadera, mientras que todas las demás condiciones se ignoran
una vez que se ha encontrado una coincidencia.
Ejemplo:
Se desea implementar un algoritmo que, al recibir la nota final de un alumno en
la materia de Programación 1, muestre un mensaje en pantalla basado en el valor de
la nota.
Los mensajes son los siguientes:
Si la nota final es 10, mostrar "Excelente".
Si la nota final es mayor o igual a 8, pero menor que 10, mostrar "Muy
Bien".
Si la nota final es mayor o igual a 6, pero menor que 8, mostrar "Bien".
En cualquier otro caso, mostrar "Necesitas mejorar".
Representar el algoritmo mediante un diagrama de flujo.
Página 11
UNIVERSIDAD TECNOLOGICA NACIONAL
ESTRUCTURAS SELECTIVAS
Facultad Regional Gral. Pacheco
INICIO
Escribe un mensaje
indicando el dato a “INGRESAR LA NOTA FINAL”
ingresar.
Lee el dato ingresado y Se realiza la comparación si el
lo guarda en la variable NF valor en la variable NF es
NF (Nota Final). igual a 10 (Diez).
Se realiza la comparación si el
Si la condición resulta valor en la variable NF es
verdadera, se escribe el Verdadero Falso mayor o igual que 8 (Ocho).
mensaje “EXCELENTE”. NF == 10
Se realiza la comparación si el
“EXCELENTE” valor en la variable NF es
Verdadero Falso mayor o igual que 6 (Seis).
NF >= 8
Si la condición resulta
verdadera, se escribe el “MUY BIEN”
Verdadero Falso
mensaje “MUY BIEN”. NF >= 6
Si la condición resulta
verdadera, se escribe el “BIEN” “NECESITAS MEJORAR”
mensaje “BIEN”.
Si resulta falsa la última condición,
se escribe el mensaje “NECESITAS
MEJORAR”, ya que la Nota Final no
cumple con ninguno de los criterios
anteriores.
FIN
El algoritmo resultante se puede interpretar de la siguiente manera: Después de
leer la nota final ingresada, el algoritmo procede a evaluar las condiciones mediante
estructuras selectivas:
Primera Evaluación: Se comienza evaluando si la nota final es igual a 10 (NF ==
10).
Si esta condición es verdadera, el algoritmo muestra "Excelente" y finaliza, evi-
tando cualquier otra evaluación.
Si la condición es falsa, se pasa a la siguiente evaluación.
Segunda Evaluación: Si la nota no es 10, se verifica si es mayor o igual a 8 (NF >=
8).
Si la condición es verdadera, el algoritmo muestra "Muy Bien" y finaliza la eje-
cución.
Si la condición es falsa, se continúa con la siguiente evaluación.
Página 12
UNIVERSIDAD TECNOLOGICA NACIONAL
ESTRUCTURAS SELECTIVAS
Facultad Regional Gral. Pacheco
Tercera Evaluación: Si la nota no es mayor o igual a 8, se evalúa si es mayor o
igual a 6 (NF >= 6).
Si esta condición es verdadera, el algoritmo muestra "Bien" y concluye.
Si la condición es falsa, significa que ninguna de las evaluaciones anteriores fue
verdadera, por lo que se muestra "Necesitas mejorar".
ESTRUCTURA SELECTIVA MULTIPLE
Una estructura selectiva múltiple permite al algoritmo tomar decisiones en-
tre varias opciones posibles basadas en el valor de una única expresión o variable,
conocida como variable selectora.
A diferencia de las estructuras selectivas simples o dobles, que evalúan condi-
ciones booleanas (verdadero/falso), la estructura selectiva múltiple elige entre varias
alternativas predefinidas.
El camino que seguirá el algoritmo dependerá del valor que tome la variable se-
lectora.
….
VARIABLE
SELECTOR
VALOR 1 VALOR 2 VALOR 4 VALOR N
VALOR 3
ACCION 1 ACCION 1 ACCION 1 ACCION 1 ACCION 1
ACCION N ACCION N ACCION N ACCION N ACCION N
ACCION N+1
….
Página 13
UNIVERSIDAD TECNOLOGICA NACIONAL
ESTRUCTURAS SELECTIVAS
Facultad Regional Gral. Pacheco
Cómo Funciona:
Se evalúa el valor de la variable selectora. Si este valor coincide con alguno de
los valores preestablecidos en las opciones, se ejecuta el bloque de instrucciones co-
rrespondiente a esa opción. Si ninguno de los casos predefinidos se cumple, se ejecu-
ta una opción "por defecto".
Este tipo de estructura organiza las instrucciones de manera clara y fácil de en-
tender. Evita múltiples comparaciones anidadas y permite manejar varios casos den-
tro de un solo bloque, facilitando la gestión de diversas opciones.
La estructura selectiva múltiple es ideal cuando tienes una sola variable o ex-
presión que puede tomar varios valores posibles y deseas que el flujo del algoritmo
cambie según ese valor.
Ejemplo:
Se desea desarrollar un algoritmo que, al recibir como datos la categoría de un
empleado y su sueldo actual, incremente este último según las especificaciones de la
siguiente tabla:
CATEGORIA INCREMENTO
1 3.5%
2 4.1%
3 4.8%
4 5.3%
El algoritmo debe calcular el nuevo sueldo aplicando el incremento correspon-
diente y mostrarlo en pantalla. Representar el algoritmo mediante un diagrama de
flujo.
Página 14
UNIVERSIDAD TECNOLOGICA NACIONAL
ESTRUCTURAS SELECTIVAS
Facultad Regional Gral. Pacheco
INICIO
Escribe un mensaje
indicando los datos “INGRESAR LA CATEGORÍA Y SUELDO”
a ingresar.
Lee los datos ingresados y los Evalúa si el valor de la variable CAT
guarda respectivamente en CAT , SUELDO coincide con alguno de los valores
las variables CAT y SUELDO. prestablecidos en las opciones.
CAT
1 2 3 4
NS=SUELDO*1.035 NS=SUELDO*1.041 NS=SUELDO*1.048 NS=SUELDO*1.053
Calcula el nuevo sueldo de Muestra por pantalla el
acuerdo con el incremento de “EL NUEVO SUELDO ES:”, NS
Nuevo Sueldo.
cada CATEGORÍA y lo guarda en
la variable NS (Nuevo Sueldo).
FIN
El algoritmo resultante se puede interpretar de la siguiente manera:
Después de leer la categoría y el sueldo, la estructura selectiva múltiple evalúa
el valor de la variable CAT:
Si CAT es 1, se calcula el nuevo sueldo aplicando un incremento del 3.5%.
Si CAT es 2, se calcula el nuevo sueldo con un incremento del 4.1%.
Si CAT es 3, se calcula el nuevo sueldo con un incremento del 4.8%.
Si CAT es 4, se calcula el nuevo sueldo con un incremento del 5.3%.
Una vez realizado el cálculo según la categoría seleccionada, el flujo de control
continúa después de la estructura selectiva múltiple y se muestra en pantalla el nue-
vo sueldo.
La estructura selectiva múltiple trabaja con valores únicos para cada caso. Es
decir, cada opción o caso en la estructura corresponde a un valor específico de la va-
riable selectora.
Página 15