CESBA · Lógica de Programación con AlgoritmosLSC0102 · Ejecutivo · 1.er semestre
Progreso 0%

Sesión 15 · Selección entre varias alternativas

Condicionales múltiples, anidadas y Según / Switch

Cuando un problema tiene más de dos alternativas necesitamos organizar las decisiones con cuidado. En esta sesión aprenderás a clasificar rangos mediante Si–Sino Si, colocar una decisión dentro de otra cuando exista dependencia y utilizar Según/Switch para menús u opciones discretas.

Evidencia: algoritmo de menú + clasificador · 45 min
Propósito de aprendizaje

Elegir entre más de dos posibilidades

01 · Clasificar

Ordenar rangos mediante una cadena de condiciones.

02 · Anidar

Resolver una segunda decisión solo cuando la primera lo requiere.

03 · Seleccionar

Usar Según/Switch cuando una variable toma opciones concretas.

04 · Justificar

Explicar por qué una estructura es más adecuada que otra.

Pregunta guía: ¿usarías la misma estructura para clasificar una calificación por rangos que para un menú con opciones 1, 2, 3 y 4?
Recuperación

Antes de trabajar múltiples caminos

Lectura de aprendizaje

Tres formas de organizar decisiones

1. De dos caminos a varios

Una condicional doble distingue entre dos resultados. Sin embargo, muchos problemas necesitan tres, cuatro o más categorías. Por ejemplo: Excelente, Bueno, Suficiente y Requiere apoyo.

2. Condicional múltiple con Si–Sino Si

Se utiliza cuando existen varias condiciones que deben evaluarse en orden. En nuestra convención educativa escribiremos:

Si condicion1 Entonces acciones1 Sino Si condicion2 Entonces acciones2 Sino Si condicion3 Entonces acciones3 SiNo accionesFinales FinSi
Nota de sintaxis: distintas herramientas representan esta cadena de formas diferentes. Aquí nos interesa la lógica: probar condiciones en orden y ejecutar únicamente el primer camino que corresponda.

3. El orden importa

Para clasificar una calificación de 0 a 10:

Si calificacion >= 9 Entonces Escribir "Excelente" Sino Si calificacion >= 8 Entonces Escribir "Bueno" Sino Si calificacion >= 6 Entonces Escribir "Suficiente" SiNo Escribir "Requiere apoyo" FinSi

Con calificación 9.5, la primera condición ya es verdadera y no necesitamos seguir evaluando las demás.

4. Error por orden incorrecto

Si calificacion >= 6 Entonces Escribir "Suficiente" Sino Si calificacion >= 9 Entonces Escribir "Excelente" ...

Una calificación de 9.5 cumple primero >= 6, por lo que nunca llegará a “Excelente”. Cuando trabajas rangos descendentes, normalmente conviene revisar de mayor a menor.

5. Condicional anidada

Una estructura es anidada cuando una decisión se encuentra dentro de otra. Se utiliza cuando la segunda pregunta solo tiene sentido después de conocer el resultado de la primera.

Si usuarioRegistrado = Verdadero Entonces Si pagoConfirmado = Verdadero Entonces Escribir "Acceso completo" SiNo Escribir "Pago pendiente" FinSi SiNo Escribir "Usuario no registrado" FinSi

Aquí no tiene sentido evaluar el pago como parte del acceso completo si el usuario ni siquiera está registrado.

6. Anidada no significa “mejor”

No anides por costumbre. Una condición compuesta puede ser más clara cuando solo necesitas un resultado:

(edad >= 18) Y (registroCompleto = Verdadero)

La anidación es útil cuando cada nivel conduce a acciones diferentes o cuando la segunda decisión depende conceptualmente de la primera.

7. Según / Switch

Según/Switch es útil cuando una misma variable se compara contra valores concretos, como una opción de menú.

Segun opcion Hacer 1: Escribir "Consultar saldo" 2: Escribir "Realizar pago" 3: Escribir "Ver movimientos" 4: Escribir "Salir" De Otro Modo: Escribir "Opción no válida" FinSegun

En lenguajes reales puede aparecer como switch, case y default. La sintaxis exacta depende del lenguaje.

8. Cuándo NO usar Según

Según/Switch no suele ser la mejor opción para rangos como calificacion >= 9 o edad < 18. Su fortaleza está en comparar una expresión con opciones discretas: 1, 2, 3; "A", "B", "C"; etc.

9. Comparación rápida

EstructuraConviene cuando...Ejemplo
Si–SiNoHay dos resultados principales.Aprobado / No aprobado
Si–Sino SiHay varios rangos o condiciones ordenadas.Clasificación de calificaciones
AnidadaUna segunda decisión depende de una primera.Registro → pago
Según/SwitchUna variable se compara con opciones concretas.Menú 1–4

10. Pruebas recomendadas

Para un clasificador, prueba un valor de cada categoría y los límites. Para un menú, prueba todas las opciones válidas y al menos una opción inválida. Para una anidada, procura activar cada combinación relevante de caminos.

11. Errores frecuentes

  • Ordenar mal las condiciones y volver inaccesible una categoría.
  • Dejar huecos entre rangos o hacer que dos categorías se traslapen.
  • Olvidar una salida para valores no contemplados.
  • Usar Según para condiciones de rango complejas.
  • Anidar demasiado cuando una condición compuesta sería más clara.
  • No probar opciones inválidas en un menú.
Alcance: hoy trabajamos selección múltiple y anidación. No hay ciclos todavía; un menú de esta sesión se evalúa una sola vez.
Laboratorio 1

Clasificador por rangos

Simulador de calificación

Reglas: 9–10 Excelente; 8–<9 Bueno; 6–<8 Suficiente; menos de 6 Requiere apoyo.

Resultado pendiente.

Prueba los límites

Detecta el orden incorrecto

Si puntos >= 50 Entonces Escribir "Nivel básico" Sino Si puntos >= 80 Entonces Escribir "Nivel intermedio" Sino Si puntos >= 95 Entonces Escribir "Nivel avanzado" FinSi

¿Qué problema produce este orden?

Laboratorio 2

Decisión dentro de otra decisión

Simulador · registro y pago

Resultado pendiente.

Predice cada combinación

¿Compuesta o anidada?

Laboratorio 3

Según / Switch para opciones concretas

Simulador de menú

1 Consultar saldo · 2 Realizar pago · 3 Ver movimientos · 4 Salir

Prueba el menú completo

Completa la estructura

Segun opcion Hacer 1: Escribir "Nuevo archivo" 2: Escribir "Abrir archivo" 3: Escribir "Guardar" __________: Escribir "Opción inválida" FinSegun
Ejercicio de decisión

¿Qué estructura elegirías?

Justifica una elección

Problema: un sistema recibe una letra de categoría: A, B, C o D y debe mostrar una descripción diferente. También necesita una respuesta para cualquier letra no válida.

Evidencia oficial

Algoritmo de menú y clasificador

A. Clasificador de calificaciones · Si–Sino Si

Reglas: 9–10 = Excelente; 8–<9 = Bueno; 6–<8 = Suficiente; 0–<6 = Requiere apoyo. El algoritmo debe leer una calificación y mostrar una sola categoría.

B. Menú de sistema · Según/Switch

Opciones: 1 Registrar usuario; 2 Consultar usuario; 3 Actualizar datos; 4 Salir. Cualquier otro valor debe mostrar “Opción no válida”. El menú se evalúa una sola vez en esta sesión.

Lista de verificación

Reporte de evidencia

Analiza los dos algoritmos para generar el reporte.

Evaluación de aprendizaje

Comprueba tu comprensión

Reporte de la sesión

Resultados del estudiante

Resultado global
—
Completa las actividades obligatorias.

Perfil de aprendizaje

Evidencia oficial: algoritmo de menú y clasificador.
Sesión 15 · LSC0102 · Si–Sino Si · Condicionales anidadas · Según/Switch.