SlideShare una empresa de Scribd logo
1 de 51
Descargar para leer sin conexión
ESTRUCTURAS DE
PROGRAMACIÓN
Unidad Temática 3
El Flujo de Control de un Programa
 El término Flujo de Control (secuenciación o control del flujo) se refiere al
orden en que se ejecutan las sentencias del programa.
 Existen tres estructuras de control de flujo estandarizadas:
Secuencial, Selección y Repetitiva.
 El flujo normal de control de todos los programas es el
secuencial.
Estructura Secuencial
 Es aquella en la que una acción (instrucción o sentencia) sigue a otra en
secuencia.
Estructura Secuencial
 Ejercicio:
 1) Calcular la suma y el producto de 2 números. Representar el algoritmo en
Pseudocódigo y diagrama de flujo.
 2) Calcular el salario neto de un trabajador en función del número de horas
trabajadas, precio de la hora de trabajo y (considerando unos descuentos
fijos) el sueldo bruto en concepto de impuestos (20 por 100).
Estructura Secuencial
 Ejercicio 1:
Estructura Secuencial
 Ejercicio 2:
Estructura Secuencial
 Ejercicio 2:
Estructuras Selectivas
 Se utilizan para tomar decisiones lógicas, también se conocen como
estructuras de decisión o alternativas.
 En las estructuras selectivas se evalúa una condición y en consecuencia se
realiza un opción u otra.
 Las condiciones se especifican usando expresiones lógicas.
 En pseudocódigo se utilizan las palabras if, then, else (si, entonces, si_no).
 Las estructuras selectivas pueden ser: simples, dobles o múltiples.
Alternativa Simple (Si-Entonces/If-Then)
 Ejecuta una determinada acción cuando se cumple una determinada
condición.
- Si la condición es verdadera, entonces ejecuta la acción S1 (o acciones).
- Si la condición es falsa, entonces no hacer nada.
Alternativa Simple (Si-Entonces/If-Then)
- Formas de escritura
Alternativa Doble (si-entonces-sino/if-
then-else)
- Si la condición es verdadera, se ejecuta la acción S1 y si es falsa, se ejecuta
la acción S2.
Alternativa Doble (si-entonces-sino/if-
then-else)
- Si la condición es verdadera, se ejecuta la acción S1 y si es falsa, se ejecuta
la acción S2.
Alternativa Doble (si-entonces-sino/if-
then-else)
Alternativa doble
con acción compuesta
Alternativa Doble (si-entonces-sino/if-
then-else)
 Ejercicio 3: Diseñar un algoritmo para la resolución de una ecuación de
primer grado.
 Ejercicio 4: Calcular la media aritmética de una serie de números positivos.
Alternativa Doble (si-entonces-sino/if-
then-else)
 Ejercicio 3:
Alternativa Doble (si-entonces-sino/if-
then-else)
 Ejercicio 4: Calcular la media aritmética de una serie de números positivos.
Se supondrá que la entrada de datos es por el teclado hasta que se introduzca
el último número que será -99.
Alternativa Doble (si-entonces-sino/if-
then-else)
 Ejercicio 4:
Alternativa Doble (si-entonces-sino/if-
then-else)
 Ejercicio 5: Se desea obtener la nómina semanal – salario neto – de los
empleados de un empresa cuyo trabajo se paga por horas y del modo
siguiente.
 las horas inferiores o iguales a 35 horas (semanales) se pagan a una tarifa
determinada que se debe introducir por teclado al igual que el número de
horas y el nombre del trabajador.
 las horas superiores a 35 se pagarán como extras a un promedio de 1.5 horas
normales.
 Los impuestos a reducir a los trabajadores varían en función de su sueldo
mensual:
- Sueldo <= 2000, libre de impuestos
- Las siguientes 220 euros al 20%
- El resto al 30%
Alternativa Doble (si-entonces-sino/if-
then-else)
 Ejercicio 5:
 Ejercicio 5:
Alternativa Doble (si-entonces-sino/if-
then-else)
 Ejercicio 6: Empleo de estructura selectiva para detectar si un número tiene
o no parte fraccionaria (decimales).
 Ejercicio 7: Escritura selectiva para averiguar si un año leído es o no
bisiesto.
 Ejercicio 8: Algoritmo que nos calcule el área de un triángulo conociendo
sus lados. La estructura selectiva se utiliza para el control de la entrada de
datos en el programa.
Alternativa Doble (si-entonces-sino/if-
then-else)
 Ejercicio 6:
Alternativa Doble (si-entonces-sino/if-
then-else)
 Ejercicio 7:
Alternativa Doble (si-entonces-sino/if-
then-else)
 Ejercicio 8:
Alternativa Múltiple (según_sea, caso_de
/case )
 La estructura de decisión múltiple evaluará
una expresión que tomará n valores
distintos, 1, 2, 3, …, n.
 De acuerdo al valor elegido, se realizará
una de las n acciones (un camino entre los n
posibles).
 Ejemplo en pseudocódigo.
Alternativa Múltiple (según_sea, caso_de
/case )
 Otros modelos
Alternativa Múltiple (según_sea, caso_de
/case )
 Diagrama de flujo
Alternativa Múltiple (según_sea, caso_de
/case )
 Diagrama de flujo
Alternativa Múltiple (según_sea, caso_de
/case )
 Nota: Los valores que toman las expresiones (E) no tienen por qué ser
consecutivos ni únicos; se pueden considerar rangos de constantes
numéricas o de caracteres como valores de la expresión E.
Alternativa Múltiple (según_sea, caso_de
/case )
 Ejercicio 9: 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 introducida por
teclado.
Los días de la semana son 7; por consiguiente, el rango de valores de será
1, 2, …, 7; en caso de que tome un valor fuera de este rango se deberá
producir un mensaje de error advirtiendo la situación anómala.
 Ejercicio 10: Se desea convertir las calificaciones alfabéticas y
a calificaciones numéricas y respectivamente.
 Ejercicio 11: Se desea leer por teclado un número comprendido entre 1 y 10
(inclusive) y se desea visualizar si el número es par o impar a través de un
mensaje ( o ).
Alternativa Múltiple (según_sea, caso_de
/case )
 Ejercicio 12: Leída una fecha, decir el día de la semana, suponiendo que el
día 1 de dicho mes fue lunes.
 Ejercicio 13: Preguntar qué día de la semana fue el día 1 del mes actual y
calcular que día de la semana es hoy.
 Ejercicio 14: Algoritmo que nos indique si un número es entero, leído del
teclado, tiene 1, 2, 3 o más de 3 dígitos. Considerar los negativos.
Alternativa Múltiple (según_sea, caso_de
/case )
 Ejercicio 9:
Alternativa Múltiple (según_sea, caso_de
/case )
 Ejercicio 10:
Alternativa Múltiple (según_sea, caso_de
/case )
 Ejercicio 11:
Alternativa Múltiple (según_sea, caso_de
/case )
 Ejercicio 12:
Alternativa Múltiple (según_sea, caso_de
/case )
 Ejercicio 13:
Alternativa Múltiple (según_sea, caso_de
/case )
 Ejercicio 14:
Estructuras de Decisión Anidadas (en
Escalera)
 Es posible utilizar la instrucción para estructuras de selección con más de
dos alternativas.
 Una estructura si-entonces puede contener otra estructura si-entonces y
esta estructura puede contener otra y así sucesivamente cualquier número
de veces.
Estructuras de Decisión Anidadas (en
Escalera)
 Las estructuras interiores a otras estructuras se denominan anidadas o
encajadas.
Estructuras de Decisión Anidadas (en
Escalera)
 Una estructura de selección de n
alternativas o de decisión múltiple se
puede construir con este formato.
Estructuras de Decisión Anidadas (en
Escalera)
 Ejercicio 15: Diseñar un algoritmo que lea tres números , , y visualice
en pantalla el valor del más grande. Se supone que los tres valores son
diferentes.
 Ejercicio 16: Diseñar un algoritmo que lea tres números , , e imprima
los valores máximo y mínimo. El procedimiento consistirá en comparaciones
sucesivas de parejas de números.
 Ejercicio 17: Pseudocódigo que nos permita calcular las soluciones de una
ecuación de segundo grado, incluyendo los valores imaginarios.
 Ejercicio 18: Algoritmo al que le damos la hora , , y nos calcule la
hora dentro de un segundo. Leeremos las horas, minutos y segundos como
números enteros.
Estructuras de Decisión Anidadas (en
Escalera)
 Ejercicio 15:
 Ejercicio 16:
 Ejercicio 17:
Estructuras de Decisión Anidadas (en
Escalera)
 Ejercicio 18:
La Sentencia ( )
 En ocasiones es necesario realizar bifurcaciones incondicionales, para esto
se utiliza la instrucción ( ).
 Algunos prestigiosos informáticos han tachado esta instrucción como nefasta
y perjudicial para los programadores y recomiendan no utilizarla en sus
algoritmos y programas.
 A pesar de lo anterior, todos los lenguajes de programación contienen esta
instrucción.
 En general, no existe ninguna necesidad de utilizar instrucciones .
 Se puede emplear en tipos de situaciones de salida de bucles.
 Para utilizar esta instrucción es necesario una etiqueta que sirva de punto
de referencia para el salto.
La Sentencia ( )
 Ejemplos:
La Sentencia ( )
 Ejemplo:
La Sentencia ( )
 Ejemplo: este sí se puede aceptar
Actividades de programación resueltas
 4.1 Leer dos números y deducir si están en orden creciente.
 4.2 Determinar el precio del billete de ida y vuelta en avión, conociendo la
distancia a recorrer y sabiendo que si el número de días de estancia es
superior a 7 y la distancia superior a 800 km el billete tiene una reducción
del 30%. El precio por km es de 2,5 Euros.
 4.3 Los empleados de una fábrica trabajan en dos turnos: diurno y nocturno.
Se desea calcular el jornal diario de acuerdo con los siguientes puntos:
1. La tarifa de las horas diurnas es de 5 Euros.
2. La tarifa de las horas nocturnas es de 8 Euros.
3. En caso de ser Domingo, la tarifa se incrementará en 2 Euros el turno
diurno y 3 Euros el turno nocturno.
 4.4 Construir un algoritmo que escriba los nombres de los días de la semana,
en función de la entrada correspondiente a la variable .
Taller 3 – Cap. 4

Más contenido relacionado

Similar a Estructuras Selectivas.pdf

Similar a Estructuras Selectivas.pdf (20)

6 Escritura De Algoritmos Programas
6 Escritura De Algoritmos Programas6 Escritura De Algoritmos Programas
6 Escritura De Algoritmos Programas
 
Estructuras de control algoritmos dq
Estructuras de control algoritmos   dqEstructuras de control algoritmos   dq
Estructuras de control algoritmos dq
 
Estructuras de control de flujo
Estructuras de control de flujoEstructuras de control de flujo
Estructuras de control de flujo
 
Unidad 1, 2 y_3_algoritmos
Unidad 1, 2 y_3_algoritmosUnidad 1, 2 y_3_algoritmos
Unidad 1, 2 y_3_algoritmos
 
Estructuras de control selectiva
Estructuras de control selectivaEstructuras de control selectiva
Estructuras de control selectiva
 
Taller algoritmos2
Taller algoritmos2Taller algoritmos2
Taller algoritmos2
 
Clase 3
Clase 3Clase 3
Clase 3
 
Guía de Algoritmo y Programación en C
Guía de Algoritmo y Programación en CGuía de Algoritmo y Programación en C
Guía de Algoritmo y Programación en C
 
Guia 4
Guia 4Guia 4
Guia 4
 
Simulaunoitrm
SimulaunoitrmSimulaunoitrm
Simulaunoitrm
 
Pb1
Pb1Pb1
Pb1
 
Mod 2 algoritmos
Mod 2 algoritmosMod 2 algoritmos
Mod 2 algoritmos
 
2ª unidad de algoritmo
2ª unidad de algoritmo2ª unidad de algoritmo
2ª unidad de algoritmo
 
Capítulo 07 interpretación de resultados
Capítulo 07 interpretación de resultadosCapítulo 07 interpretación de resultados
Capítulo 07 interpretación de resultados
 
Capítulo 07 interpretación de resultados
Capítulo 07 interpretación de resultadosCapítulo 07 interpretación de resultados
Capítulo 07 interpretación de resultados
 
Algortimos jury
Algortimos juryAlgortimos jury
Algortimos jury
 
Programación modular estructurada.ppt
Programación modular estructurada.pptProgramación modular estructurada.ppt
Programación modular estructurada.ppt
 
INTRODUCCIÓN ADSI - PARTE 3
INTRODUCCIÓN ADSI - PARTE 3INTRODUCCIÓN ADSI - PARTE 3
INTRODUCCIÓN ADSI - PARTE 3
 
Est de control topdown
Est de control topdownEst de control topdown
Est de control topdown
 
Instrucciones C++
Instrucciones C++Instrucciones C++
Instrucciones C++
 

Último

Voladura Controlada Sobrexcavación (como se lleva a cabo una voladura)
Voladura Controlada  Sobrexcavación (como se lleva a cabo una voladura)Voladura Controlada  Sobrexcavación (como se lleva a cabo una voladura)
Voladura Controlada Sobrexcavación (como se lleva a cabo una voladura)ssuser563c56
 
Una estrategia de seguridad en la nube alineada al NIST
Una estrategia de seguridad en la nube alineada al NISTUna estrategia de seguridad en la nube alineada al NIST
Una estrategia de seguridad en la nube alineada al NISTFundación YOD YOD
 
07 MECANIZADO DE CONTORNOS para torno cnc universidad catolica
07 MECANIZADO DE CONTORNOS para torno cnc universidad catolica07 MECANIZADO DE CONTORNOS para torno cnc universidad catolica
07 MECANIZADO DE CONTORNOS para torno cnc universidad catolicalf1231
 
tema05 estabilidad en barras mecanicas.pdf
tema05 estabilidad en barras mecanicas.pdftema05 estabilidad en barras mecanicas.pdf
tema05 estabilidad en barras mecanicas.pdfvictoralejandroayala2
 
COMPEDIOS ESTADISTICOS DE PERU EN EL 2023
COMPEDIOS ESTADISTICOS DE PERU EN EL 2023COMPEDIOS ESTADISTICOS DE PERU EN EL 2023
COMPEDIOS ESTADISTICOS DE PERU EN EL 2023RonaldoPaucarMontes
 
TAREA 8 CORREDOR INTEROCEÁNICO DEL PAÍS.pdf
TAREA 8 CORREDOR INTEROCEÁNICO DEL PAÍS.pdfTAREA 8 CORREDOR INTEROCEÁNICO DEL PAÍS.pdf
TAREA 8 CORREDOR INTEROCEÁNICO DEL PAÍS.pdfAntonioGonzalezIzqui
 
desarrollodeproyectoss inge. industrial
desarrollodeproyectoss  inge. industrialdesarrollodeproyectoss  inge. industrial
desarrollodeproyectoss inge. industrialGibranDiaz7
 
PPT SERVIDOR ESCUELA PERU EDUCA LINUX v7.pptx
PPT SERVIDOR ESCUELA PERU EDUCA LINUX v7.pptxPPT SERVIDOR ESCUELA PERU EDUCA LINUX v7.pptx
PPT SERVIDOR ESCUELA PERU EDUCA LINUX v7.pptxSergioGJimenezMorean
 
Manual_Identificación_Geoformas_140627.pdf
Manual_Identificación_Geoformas_140627.pdfManual_Identificación_Geoformas_140627.pdf
Manual_Identificación_Geoformas_140627.pdfedsonzav8
 
Clase 7 MECÁNICA DE FLUIDOS 2 INGENIERIA CIVIL
Clase 7 MECÁNICA DE FLUIDOS 2 INGENIERIA CIVILClase 7 MECÁNICA DE FLUIDOS 2 INGENIERIA CIVIL
Clase 7 MECÁNICA DE FLUIDOS 2 INGENIERIA CIVILProblemSolved
 
Obras paralizadas en el sector construcción
Obras paralizadas en el sector construcciónObras paralizadas en el sector construcción
Obras paralizadas en el sector construcciónXimenaFallaLecca1
 
Principales aportes de la carrera de William Edwards Deming
Principales aportes de la carrera de William Edwards DemingPrincipales aportes de la carrera de William Edwards Deming
Principales aportes de la carrera de William Edwards DemingKevinCabrera96
 
CHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONAL
CHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONALCHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONAL
CHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONALKATHIAMILAGRITOSSANC
 
Condensadores de la rama de electricidad y magnetismo
Condensadores de la rama de electricidad y magnetismoCondensadores de la rama de electricidad y magnetismo
Condensadores de la rama de electricidad y magnetismosaultorressep
 
Flujo multifásico en tuberias de ex.pptx
Flujo multifásico en tuberias de ex.pptxFlujo multifásico en tuberias de ex.pptx
Flujo multifásico en tuberias de ex.pptxEduardoSnchezHernnde5
 
El proyecto “ITC SE Lambayeque Norte 220 kV con seccionamiento de la LT 220 kV
El proyecto “ITC SE Lambayeque Norte 220 kV con seccionamiento de la LT 220 kVEl proyecto “ITC SE Lambayeque Norte 220 kV con seccionamiento de la LT 220 kV
El proyecto “ITC SE Lambayeque Norte 220 kV con seccionamiento de la LT 220 kVSebastianPaez47
 
aCARGA y FUERZA UNI 19 marzo 2024-22.ppt
aCARGA y FUERZA UNI 19 marzo 2024-22.pptaCARGA y FUERZA UNI 19 marzo 2024-22.ppt
aCARGA y FUERZA UNI 19 marzo 2024-22.pptCRISTOFERSERGIOCANAL
 
Clase 2 Revoluciones Industriales y .pptx
Clase 2 Revoluciones Industriales y .pptxClase 2 Revoluciones Industriales y .pptx
Clase 2 Revoluciones Industriales y .pptxChristopherOlave2
 
Presentación electricidad y magnetismo.pptx
Presentación electricidad y magnetismo.pptxPresentación electricidad y magnetismo.pptx
Presentación electricidad y magnetismo.pptxYajairaMartinez30
 
presentacion medidas de seguridad riesgo eléctrico
presentacion medidas de seguridad riesgo eléctricopresentacion medidas de seguridad riesgo eléctrico
presentacion medidas de seguridad riesgo eléctricoalexcala5
 

Último (20)

Voladura Controlada Sobrexcavación (como se lleva a cabo una voladura)
Voladura Controlada  Sobrexcavación (como se lleva a cabo una voladura)Voladura Controlada  Sobrexcavación (como se lleva a cabo una voladura)
Voladura Controlada Sobrexcavación (como se lleva a cabo una voladura)
 
Una estrategia de seguridad en la nube alineada al NIST
Una estrategia de seguridad en la nube alineada al NISTUna estrategia de seguridad en la nube alineada al NIST
Una estrategia de seguridad en la nube alineada al NIST
 
07 MECANIZADO DE CONTORNOS para torno cnc universidad catolica
07 MECANIZADO DE CONTORNOS para torno cnc universidad catolica07 MECANIZADO DE CONTORNOS para torno cnc universidad catolica
07 MECANIZADO DE CONTORNOS para torno cnc universidad catolica
 
tema05 estabilidad en barras mecanicas.pdf
tema05 estabilidad en barras mecanicas.pdftema05 estabilidad en barras mecanicas.pdf
tema05 estabilidad en barras mecanicas.pdf
 
COMPEDIOS ESTADISTICOS DE PERU EN EL 2023
COMPEDIOS ESTADISTICOS DE PERU EN EL 2023COMPEDIOS ESTADISTICOS DE PERU EN EL 2023
COMPEDIOS ESTADISTICOS DE PERU EN EL 2023
 
TAREA 8 CORREDOR INTEROCEÁNICO DEL PAÍS.pdf
TAREA 8 CORREDOR INTEROCEÁNICO DEL PAÍS.pdfTAREA 8 CORREDOR INTEROCEÁNICO DEL PAÍS.pdf
TAREA 8 CORREDOR INTEROCEÁNICO DEL PAÍS.pdf
 
desarrollodeproyectoss inge. industrial
desarrollodeproyectoss  inge. industrialdesarrollodeproyectoss  inge. industrial
desarrollodeproyectoss inge. industrial
 
PPT SERVIDOR ESCUELA PERU EDUCA LINUX v7.pptx
PPT SERVIDOR ESCUELA PERU EDUCA LINUX v7.pptxPPT SERVIDOR ESCUELA PERU EDUCA LINUX v7.pptx
PPT SERVIDOR ESCUELA PERU EDUCA LINUX v7.pptx
 
Manual_Identificación_Geoformas_140627.pdf
Manual_Identificación_Geoformas_140627.pdfManual_Identificación_Geoformas_140627.pdf
Manual_Identificación_Geoformas_140627.pdf
 
Clase 7 MECÁNICA DE FLUIDOS 2 INGENIERIA CIVIL
Clase 7 MECÁNICA DE FLUIDOS 2 INGENIERIA CIVILClase 7 MECÁNICA DE FLUIDOS 2 INGENIERIA CIVIL
Clase 7 MECÁNICA DE FLUIDOS 2 INGENIERIA CIVIL
 
Obras paralizadas en el sector construcción
Obras paralizadas en el sector construcciónObras paralizadas en el sector construcción
Obras paralizadas en el sector construcción
 
Principales aportes de la carrera de William Edwards Deming
Principales aportes de la carrera de William Edwards DemingPrincipales aportes de la carrera de William Edwards Deming
Principales aportes de la carrera de William Edwards Deming
 
CHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONAL
CHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONALCHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONAL
CHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONAL
 
Condensadores de la rama de electricidad y magnetismo
Condensadores de la rama de electricidad y magnetismoCondensadores de la rama de electricidad y magnetismo
Condensadores de la rama de electricidad y magnetismo
 
Flujo multifásico en tuberias de ex.pptx
Flujo multifásico en tuberias de ex.pptxFlujo multifásico en tuberias de ex.pptx
Flujo multifásico en tuberias de ex.pptx
 
El proyecto “ITC SE Lambayeque Norte 220 kV con seccionamiento de la LT 220 kV
El proyecto “ITC SE Lambayeque Norte 220 kV con seccionamiento de la LT 220 kVEl proyecto “ITC SE Lambayeque Norte 220 kV con seccionamiento de la LT 220 kV
El proyecto “ITC SE Lambayeque Norte 220 kV con seccionamiento de la LT 220 kV
 
aCARGA y FUERZA UNI 19 marzo 2024-22.ppt
aCARGA y FUERZA UNI 19 marzo 2024-22.pptaCARGA y FUERZA UNI 19 marzo 2024-22.ppt
aCARGA y FUERZA UNI 19 marzo 2024-22.ppt
 
Clase 2 Revoluciones Industriales y .pptx
Clase 2 Revoluciones Industriales y .pptxClase 2 Revoluciones Industriales y .pptx
Clase 2 Revoluciones Industriales y .pptx
 
Presentación electricidad y magnetismo.pptx
Presentación electricidad y magnetismo.pptxPresentación electricidad y magnetismo.pptx
Presentación electricidad y magnetismo.pptx
 
presentacion medidas de seguridad riesgo eléctrico
presentacion medidas de seguridad riesgo eléctricopresentacion medidas de seguridad riesgo eléctrico
presentacion medidas de seguridad riesgo eléctrico
 

Estructuras Selectivas.pdf

  • 2. El Flujo de Control de un Programa  El término Flujo de Control (secuenciación o control del flujo) se refiere al orden en que se ejecutan las sentencias del programa.  Existen tres estructuras de control de flujo estandarizadas: Secuencial, Selección y Repetitiva.  El flujo normal de control de todos los programas es el secuencial.
  • 3. Estructura Secuencial  Es aquella en la que una acción (instrucción o sentencia) sigue a otra en secuencia.
  • 4. Estructura Secuencial  Ejercicio:  1) Calcular la suma y el producto de 2 números. Representar el algoritmo en Pseudocódigo y diagrama de flujo.  2) Calcular el salario neto de un trabajador en función del número de horas trabajadas, precio de la hora de trabajo y (considerando unos descuentos fijos) el sueldo bruto en concepto de impuestos (20 por 100).
  • 8. Estructuras Selectivas  Se utilizan para tomar decisiones lógicas, también se conocen como estructuras de decisión o alternativas.  En las estructuras selectivas se evalúa una condición y en consecuencia se realiza un opción u otra.  Las condiciones se especifican usando expresiones lógicas.  En pseudocódigo se utilizan las palabras if, then, else (si, entonces, si_no).  Las estructuras selectivas pueden ser: simples, dobles o múltiples.
  • 9. Alternativa Simple (Si-Entonces/If-Then)  Ejecuta una determinada acción cuando se cumple una determinada condición. - Si la condición es verdadera, entonces ejecuta la acción S1 (o acciones). - Si la condición es falsa, entonces no hacer nada.
  • 11. Alternativa Doble (si-entonces-sino/if- then-else) - Si la condición es verdadera, se ejecuta la acción S1 y si es falsa, se ejecuta la acción S2.
  • 12. Alternativa Doble (si-entonces-sino/if- then-else) - Si la condición es verdadera, se ejecuta la acción S1 y si es falsa, se ejecuta la acción S2.
  • 14. Alternativa Doble (si-entonces-sino/if- then-else)  Ejercicio 3: Diseñar un algoritmo para la resolución de una ecuación de primer grado.  Ejercicio 4: Calcular la media aritmética de una serie de números positivos.
  • 16. Alternativa Doble (si-entonces-sino/if- then-else)  Ejercicio 4: Calcular la media aritmética de una serie de números positivos. Se supondrá que la entrada de datos es por el teclado hasta que se introduzca el último número que será -99.
  • 18. Alternativa Doble (si-entonces-sino/if- then-else)  Ejercicio 5: Se desea obtener la nómina semanal – salario neto – de los empleados de un empresa cuyo trabajo se paga por horas y del modo siguiente.  las horas inferiores o iguales a 35 horas (semanales) se pagan a una tarifa determinada que se debe introducir por teclado al igual que el número de horas y el nombre del trabajador.  las horas superiores a 35 se pagarán como extras a un promedio de 1.5 horas normales.  Los impuestos a reducir a los trabajadores varían en función de su sueldo mensual: - Sueldo <= 2000, libre de impuestos - Las siguientes 220 euros al 20% - El resto al 30%
  • 21. Alternativa Doble (si-entonces-sino/if- then-else)  Ejercicio 6: Empleo de estructura selectiva para detectar si un número tiene o no parte fraccionaria (decimales).  Ejercicio 7: Escritura selectiva para averiguar si un año leído es o no bisiesto.  Ejercicio 8: Algoritmo que nos calcule el área de un triángulo conociendo sus lados. La estructura selectiva se utiliza para el control de la entrada de datos en el programa.
  • 25. Alternativa Múltiple (según_sea, caso_de /case )  La estructura de decisión múltiple evaluará una expresión que tomará n valores distintos, 1, 2, 3, …, n.  De acuerdo al valor elegido, se realizará una de las n acciones (un camino entre los n posibles).  Ejemplo en pseudocódigo.
  • 26. Alternativa Múltiple (según_sea, caso_de /case )  Otros modelos
  • 27. Alternativa Múltiple (según_sea, caso_de /case )  Diagrama de flujo
  • 28. Alternativa Múltiple (según_sea, caso_de /case )  Diagrama de flujo
  • 29. Alternativa Múltiple (según_sea, caso_de /case )  Nota: Los valores que toman las expresiones (E) no tienen por qué ser consecutivos ni únicos; se pueden considerar rangos de constantes numéricas o de caracteres como valores de la expresión E.
  • 30. Alternativa Múltiple (según_sea, caso_de /case )  Ejercicio 9: 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 introducida por teclado. Los días de la semana son 7; por consiguiente, el rango de valores de será 1, 2, …, 7; en caso de que tome un valor fuera de este rango se deberá producir un mensaje de error advirtiendo la situación anómala.  Ejercicio 10: Se desea convertir las calificaciones alfabéticas y a calificaciones numéricas y respectivamente.  Ejercicio 11: Se desea leer por teclado un número comprendido entre 1 y 10 (inclusive) y se desea visualizar si el número es par o impar a través de un mensaje ( o ).
  • 31. Alternativa Múltiple (según_sea, caso_de /case )  Ejercicio 12: Leída una fecha, decir el día de la semana, suponiendo que el día 1 de dicho mes fue lunes.  Ejercicio 13: Preguntar qué día de la semana fue el día 1 del mes actual y calcular que día de la semana es hoy.  Ejercicio 14: Algoritmo que nos indique si un número es entero, leído del teclado, tiene 1, 2, 3 o más de 3 dígitos. Considerar los negativos.
  • 32. Alternativa Múltiple (según_sea, caso_de /case )  Ejercicio 9:
  • 33. Alternativa Múltiple (según_sea, caso_de /case )  Ejercicio 10:
  • 34. Alternativa Múltiple (según_sea, caso_de /case )  Ejercicio 11:
  • 35. Alternativa Múltiple (según_sea, caso_de /case )  Ejercicio 12:
  • 36. Alternativa Múltiple (según_sea, caso_de /case )  Ejercicio 13:
  • 37. Alternativa Múltiple (según_sea, caso_de /case )  Ejercicio 14:
  • 38. Estructuras de Decisión Anidadas (en Escalera)  Es posible utilizar la instrucción para estructuras de selección con más de dos alternativas.  Una estructura si-entonces puede contener otra estructura si-entonces y esta estructura puede contener otra y así sucesivamente cualquier número de veces.
  • 39. Estructuras de Decisión Anidadas (en Escalera)  Las estructuras interiores a otras estructuras se denominan anidadas o encajadas.
  • 40. Estructuras de Decisión Anidadas (en Escalera)  Una estructura de selección de n alternativas o de decisión múltiple se puede construir con este formato.
  • 41. Estructuras de Decisión Anidadas (en Escalera)  Ejercicio 15: Diseñar un algoritmo que lea tres números , , y visualice en pantalla el valor del más grande. Se supone que los tres valores son diferentes.  Ejercicio 16: Diseñar un algoritmo que lea tres números , , e imprima los valores máximo y mínimo. El procedimiento consistirá en comparaciones sucesivas de parejas de números.  Ejercicio 17: Pseudocódigo que nos permita calcular las soluciones de una ecuación de segundo grado, incluyendo los valores imaginarios.  Ejercicio 18: Algoritmo al que le damos la hora , , y nos calcule la hora dentro de un segundo. Leeremos las horas, minutos y segundos como números enteros.
  • 42. Estructuras de Decisión Anidadas (en Escalera)  Ejercicio 15:
  • 45. Estructuras de Decisión Anidadas (en Escalera)  Ejercicio 18:
  • 46. La Sentencia ( )  En ocasiones es necesario realizar bifurcaciones incondicionales, para esto se utiliza la instrucción ( ).  Algunos prestigiosos informáticos han tachado esta instrucción como nefasta y perjudicial para los programadores y recomiendan no utilizarla en sus algoritmos y programas.  A pesar de lo anterior, todos los lenguajes de programación contienen esta instrucción.  En general, no existe ninguna necesidad de utilizar instrucciones .  Se puede emplear en tipos de situaciones de salida de bucles.  Para utilizar esta instrucción es necesario una etiqueta que sirva de punto de referencia para el salto.
  • 47. La Sentencia ( )  Ejemplos:
  • 48. La Sentencia ( )  Ejemplo:
  • 49. La Sentencia ( )  Ejemplo: este sí se puede aceptar
  • 50. Actividades de programación resueltas  4.1 Leer dos números y deducir si están en orden creciente.  4.2 Determinar el precio del billete de ida y vuelta en avión, conociendo la distancia a recorrer y sabiendo que si el número de días de estancia es superior a 7 y la distancia superior a 800 km el billete tiene una reducción del 30%. El precio por km es de 2,5 Euros.  4.3 Los empleados de una fábrica trabajan en dos turnos: diurno y nocturno. Se desea calcular el jornal diario de acuerdo con los siguientes puntos: 1. La tarifa de las horas diurnas es de 5 Euros. 2. La tarifa de las horas nocturnas es de 8 Euros. 3. En caso de ser Domingo, la tarifa se incrementará en 2 Euros el turno diurno y 3 Euros el turno nocturno.  4.4 Construir un algoritmo que escriba los nombres de los días de la semana, en función de la entrada correspondiente a la variable .
  • 51. Taller 3 – Cap. 4