Está en la página 1de 17

UNIVERSIDAD ANDINA DEL CUSCO

FACULTAD DE INGENIERÍA Y ARQUITECTURA


ESCUELA PROFESIONAL DE INGENIERÍA DE SISTEMAS
Acreditada por ICACIT

Guía de aplicación N ° 02
Estructura de control selectiva simple
I. DATOS INFORMATIVOS
1.1. Nombre de la asignatura : ALGORÍTMICA Y LENGUAJE DE PROGRAMACIÓN
ESTRUCTURADA.
1.2. Semestre Académico : 2023-II
1.3. Ciclo de estudios : II
1.4. Área curricular : EBE estudios básicos específicos
1.5. Nombre del docente : Mgt. María Isabel Acurio Gutiérrez
Mtro. Yessenia Bernales Guzman
1.6. Objetivo Educacionales : OE1, 0E3
1.7. Resultados del estudiante : RE(a)=0, RE(b)=0, RE(c)=0, RE(h)=0
1.8. Indicadores de desempeño : A2, A3, B3, C1, H3
1.9. Fecha De Desarrollo : 04 al 09 de setiembre de 2023

I. COMPETENCIAS A CONSEGUIR

⮚ Resultado [a]
Conocimientos de Computación: La capacidad de aplicar conocimientos de matemáticas,
ciencias, computación y una especialidad de computación apropiados para los resultados
del estudiante y la disciplina del programa.

⮚ Resultado [b]
Análisis de Problemas: La capacidad de identificar, formular, investigar literatura y resolver
problemas complejos de computación y otras disciplinas relevantes

⮚ Resultado [c]
Diseño y Desarrollo de Soluciones: La capacidad de diseñar, implementar y evaluar
soluciones a problemas complejos de computación y diseña y evalúa sistemas,
componentes o procesos que satisfacen las necesidades específicas.

⮚ Resultado [h]
Uso de Herramientas Modernas: La capacidad de crear, seleccionar, adaptar y aplicar
técnicas, recursos y herramientas modernas para la práctica de la computación, con la
comprensión de sus limitaciones.

⮚ Indicador de Desempeño

PAGE
\*
UNIVERSIDAD ANDINA DEL CUSCO
FACULTAD DE INGENIERÍA Y ARQUITECTURA
ESCUELA PROFESIONAL DE INGENIERÍA DE SISTEMAS
Acreditada por ICACIT

A2. Maneja y utiliza herramientas computacionales en la implementación de algoritmos


con lógica matemática o pensamiento computacional.
A3. Plantea y resuelve problemas aplicando lógica matemática y pensamiento
computacional, así como el pensamiento sistémico.
B3. Plantea alternativas de solución considerando el impacto de la solución en el entorno
de su aplicación.
C1. Identifica y define los requerimientos de computación apropiados para la solución de
problemas complejos
H3. Adapta y aplica técnicas, recursos o herramientas para la práctica de la computación
con la comprensión de sus limitaciones.

⮚ RESULTADO DE APRENDIZAJE
● Comprende las etapas del análisis y diseño e implementación de un algoritmo utilizando el
pensamiento computacional.
● Aplica la metodología de programación en la elaboración de algoritmos.

● Identifica variables de entrada proceso, salida para la solución del problema

● Identifica el modelo de solución al problema de computación

● Implementa el diseño en un lenguaje de programación.

● Utiliza herramientas computacionales en la implementación de algoritmos.

● Utiliza un lenguaje de programación para la ejecución de sus algoritmos

● Identifica la estructura de control selectiva para resolver problemas simples de


computación.

II. MARCO TEÓRICO


Estructura selectiva: Esta estructura permite la
ejecución de uno de los bloques de instrucciones (el
Bloque V o el Bloque F). Durante su ejecución, se
evalúa la Condición, de manera que ésta resulta ser
verdadera o resulta ser falsa. Si Condición resulta ser V,
se ejecuta el Bloque V de instrucciones, si Condición
resulta ser F, se ejecuta el Bloque F de instrucciones.

PAGE
\*
UNIVERSIDAD ANDINA DEL CUSCO
FACULTAD DE INGENIERÍA Y ARQUITECTURA
ESCUELA PROFESIONAL DE INGENIERÍA DE SISTEMAS
Acreditada por ICACIT

Léxico, sintaxis y semántica


● Léxico: si, entonces, sino.

● Sintaxis: si condición entonces


inicio
Bloque de instrucciones (resultado de la condición verdadero)
fin
sino
inicio
Bloque de instrucciones (resultado de la condición falso)
fin

● Semántica: La estructura condicional tiene los siguientes componentes.

❖ Condición: Constituido por un valor booleano (verdadero o falso) o una


expresión relacional, que consiste en comparar dos valores o variables,
mediante los operadores relacionales: =, <>, <, <=, >, >=.
❖ Bloque entonces (bloque verdadero): Constituido por un conjunto de
instrucciones, que representan la parte verdadera; es decir, si la
evaluación de la condición es cierta o verdadera se ejecutarán este grupo
de instrucciones.
❖ Bloque sino (bloque falso): Constituido por otro conjunto de
instrucciones que representan la parte falsa; es decir, si la evaluación de la
condición es falsa, se ejecutarán este grupo de instrucciones.

Consideraciones adicionales:
❖ La estructura selectiva es considerada como una sola instrucción del tipo
compuesto.
❖ Como parte de las instrucciones de los Bloques V y F, podemos incluir
instrucciones de entrada, proceso o salida.
❖ Las instrucciones de los Bloques V y F deben estar contenidas entre un inicio y
un fin.
❖ Si el Bloque V o F están constituidos solo por una instrucción entonces es
opcional el uso de inicio y fin.

PAGE
\*
UNIVERSIDAD ANDINA DEL CUSCO
FACULTAD DE INGENIERÍA Y ARQUITECTURA
ESCUELA PROFESIONAL DE INGENIERÍA DE SISTEMAS
Acreditada por ICACIT

❖ El uso del Bloque falso es opcional.

2. Operadores relacionales
operado Significado En Pseudocódigo Python
r
> Mayor Ej.: SI (valor1>valor2) If valor1>valor2 :
>= mayor o igual Ej.: SI (nota>=14) If (nota >= 14) :
< Menor Ej.: SI (dia<31) If (dia<31):
<= menor o igual Ej.: SI (a <=b) If a<=b :
= Igual Ej.: SI (X==7) If X==7 :
<> Distinto Ej.: SI (6 MOD 3<>0) If (6 % 3 != 0):

3. Operadores lógicos
operador significado
No Not !
Y And &

O Or

METODOLOGÍA DE DESARROLLO DE ALGORITMOS


En el desarrollo de los algoritmos se consideran las siguientes etapas:
1.- Analizar
1.1.- Entender el problema
1.2.- Plantear un modelo
1.3.- Especificar los requerimientos
- Diccionario de variables
- Pre condición
- Acción que debe realizar el algoritmo
- Post Condición
2.- Diseñar
2.1.- Escribir el algoritmo
2.2.- Verificar manualmente
3.- Codificar en un lenguaje de programación
4.- Poner en funcionamiento.

PAGE
\*
UNIVERSIDAD ANDINA DEL CUSCO
FACULTAD DE INGENIERÍA Y ARQUITECTURA
ESCUELA PROFESIONAL DE INGENIERÍA DE SISTEMAS
Acreditada por ICACIT

III. DESARROLLO DE LA METODOLOGIA:

Ejercicio N ° 1. Elaborar un algoritmo que determine si un número entero es par o impar.

I. ANÁLISIS
1.1. Entender el Problema.
Datos Proceso Resultado
numero mensaje
12 Si (12 mod 2) == 0 verdadero Par
203 Si (203 mod 2==0) falso Impar
1997 Si (1997 mod 2==0) falso Impar
404 Si (404 mod 2 == 0) falso Par

1.2. Modelo
. Si (numero mod 2 == 0 ) ENTONCES

mensaje = ”Par” (V)

Sino

mensaje = “Impar” (F)

Otra manera de plantear el ejercicio

Si (numero mod 2 <> 0 ) ENTONCES

mensaje = “Impar” (V)

Sino

mensaje = “Par” (F)

1.3. Especificación del algoritmo.


1.3.1. Diccionario de variables

- Variable de entrada.-

numero: numero que se evaluará para determinar si es par o no: entero

- Variable de salida.-

mensaje: indica si el numero es par o no : cadena

PAGE
\*
UNIVERSIDAD ANDINA DEL CUSCO
FACULTAD DE INGENIERÍA Y ARQUITECTURA
ESCUELA PROFESIONAL DE INGENIERÍA DE SISTEMAS
Acreditada por ICACIT

1.3.2. Pre Condición {|numero >0 |}

1.3.3 Acción que realiza el algoritmo:

Determina si un numero ingresado es par o no

2. DISEÑO
2.1. Descripción del Algoritmo.

Inicio {determinar si un numero es par o no}


{Leer datos}
leer numero
{determinar par}
Si (numero mod 2 = = 0) ENTONCES
mensaje = ”Par” (V)
Sino
mensaje= “Impar” (F)

{Escribir la solución}
Escribir mensaje
fin

2.2. Verificación Manual del Algoritmo:

N° Instrucciones numero mensaje Condición Consola

Leer numero 12 Ingrese


numero
Si (numero mod 2 = =0) Verdadero
entonces

mensaje =“Par” (V)


Par

Escribir mensaje

Par

PAGE
\*
UNIVERSIDAD ANDINA DEL CUSCO
FACULTAD DE INGENIERÍA Y ARQUITECTURA
ESCUELA PROFESIONAL DE INGENIERÍA DE SISTEMAS
Acreditada por ICACIT

N° Instrucciones numero mensaje Condición Consola

Leer numero 137 Ingrese


numero
Si (numero mod 2 = =0) Falso

Sino

mensaje=“Impar” (F) Impar

Escribir mensaje
Impar

3. Codificación en Python

# fecha: 31 de agosto 2023


# acción: determinar si un numero ingresado es par o no

#Leer numero
numero= int(input("Ingresar numero: "))

#determinar si es par o no
if (numero % 2 == 0):
mensaje = "Par" #(V)

else:
mensaje = "Impar" #(F)

#Mostrar resultado (OUTPUT)


print(mensaje)

4.- Poner en funcionamiento.

Condición verdadera

PAGE
\*
UNIVERSIDAD ANDINA DEL CUSCO
FACULTAD DE INGENIERÍA Y ARQUITECTURA
ESCUELA PROFESIONAL DE INGENIERÍA DE SISTEMAS
Acreditada por ICACIT

Condición falsa

Ejercicio N ° 2. Elaborar un algoritmo que determine la cantidad de bonificación que recibirá un


vendedor según el monto de la venta que realizó, como lo especifica la siguiente tabla:

PAGE
\*
UNIVERSIDAD ANDINA DEL CUSCO
FACULTAD DE INGENIERÍA Y ARQUITECTURA
ESCUELA PROFESIONAL DE INGENIERÍA DE SISTEMAS
Acreditada por ICACIT

Venta Bonificación
venta < = 1000 10 % de la venta
venta > 1000 15 % de la venta

1. ANÁLISIS
1.1. Entender el Problema.

Entrada Proceso Salida


venta bonificacion
780 Si (780 <=1000) entonces (V) 78
bonificacion = 78 (V)

1400 Si (1400 > 1000) (F) 210

Sino
bonificacion = 210 (F) (F())

1.2. Modelo
Si (venta <= 1000) entonces
bonificacion = 0.1 * venta (V)
Sino
bonificacion = 0.15 * venta (F)
Otra alternativa

Si (venta > 1000) entonces


bonificacion = 0.15 * venta (V)
Sino
bonificacion = 0.10 * venta (F)

1.3. Especificación del algoritmo.

1.3.1. Diccionario de variables


- Variable de entrada.-
venta: un monto ingresado por teclado: real

- Variable de salida.-
bonificacion: monto adicional que recibirá el vendedor : real

PAGE
\*
UNIVERSIDAD ANDINA DEL CUSCO
FACULTAD DE INGENIERÍA Y ARQUITECTURA
ESCUELA PROFESIONAL DE INGENIERÍA DE SISTEMAS
Acreditada por ICACIT

1.3.2 Acción que realiza el algoritmo:


Determinar la bonificación del vendedor.

2. DISEÑO
2.1. Descripción del Algoritmo.

Inicio {determinar la bonificación del vendedor}


{Leer dato}
Leer venta
{determinar bonificacion}

Si venta <= 1000 entonces


bonificacion = 0.1 * venta (V)
Sino
bonificacion = 0.15 * venta (F)

{Escribir la solución}
Escribir "La bonificacion es:", bonificacion
fin
3 Codificación en Python
# fecha: 31 de agosto 2023
# acción: hallar el valor de la bonificación

#leer dato de entrada


print("Determinar la bonificacion del vendedor")

#Leer venta
venta= float(input('Ingresar valor de la venta: '))

#determinar la bonificacion
if venta <= 1000:
bonificacion = 0.1 * venta #verdadero
else:
bonificacion = 0.15 * venta

#Mostrar resultado (OUTPUT)


print("La bonificación del vendedor es: ", bonificacion)

#print(f"La bonificación de la venta {venta} es: {bonificacion}")

PAGE
\*
UNIVERSIDAD ANDINA DEL CUSCO
FACULTAD DE INGENIERÍA Y ARQUITECTURA
ESCUELA PROFESIONAL DE INGENIERÍA DE SISTEMAS
Acreditada por ICACIT

4. Poner en funcionamiento.

Caso contrario

Ejercicio N ° 3. Elaborar un algoritmo que determine el mayor de tres números.

3. ANÁLISIS
1.4. Entender el Problema.

PAGE
\*
UNIVERSIDAD ANDINA DEL CUSCO
FACULTAD DE INGENIERÍA Y ARQUITECTURA
ESCUELA PROFESIONAL DE INGENIERÍA DE SISTEMAS
Acreditada por ICACIT

Datos Proceso salida


Num1 Num2 Num3 NMayor
34 23 6 Si (34>23) entonces V 34
NMayor=34
Si(6>MMayor) F

-12 1 17 Si (-12>1) F 17
Sino
NMayor=1
Si (17 >MMayor) V
NMayor=17

3 6 4 6

1.5. Modelo
Si (Num1 >Num2) entonces
NMayor = Num1 (V)
Sino
NMayor = Num2 (F)
Si (Num3 > NMayor) entonces
NMayor = Num3 (V)
Sino
NMayor=NMayor (F)

Otra alternativa

Si (Num1 >Num2) entonces


NMayor = Num1 (V)
Sino
NMayor = Num2 (F)
Si (NMayor>Num3) entonces

NMayor=NMayor
Sino
NMayor=Num3

1.6. Especificación del algoritmo.

PAGE
\*
UNIVERSIDAD ANDINA DEL CUSCO
FACULTAD DE INGENIERÍA Y ARQUITECTURA
ESCUELA PROFESIONAL DE INGENIERÍA DE SISTEMAS
Acreditada por ICACIT

1.3.1. Diccionario de variables


- Variables de entrada.-
Num1: un numero: real
Num2: un numero: real
Num3: un numero: real
- Variables de salida.-
NMayor : Numero mayor de tres números ingresados : real

1.3.2 Acción que realiza el algoritmo:


Determina el mayor de tres números ingresados.

4. DISEÑO
4.1. Descripción del Algoritmo.

Inicio {determinar si el mayor de 3 números}


{Leer datos }
Leer Num1
Leer Num2
Leer Num3
{determinar el numero mayor}
Si Num1>=Num2 entonces
NMayor =Num1 (V)
Sino
NMayor=Num2 (F)

Si Num3>=NMayor entonces
NMayor = Num3 (V)

{Escribir la solución}
Escribir "El número mayor es:" NMayor
fin

3 Codificación en Python
# fecha: 31 de agosto 2023
# acción: hallar el valor mayor de 3 números ingresados

#leer datos de entrada


print("determinar el mayor de 3 números ingresados")

#Leer numeros
Num1= float(input('Ingresar numero 1: '))
Num2= float(input('Ingresar numero 2: '))
Num3= float(input('Ingresar numero 3: '))

PAGE
\*
UNIVERSIDAD ANDINA DEL CUSCO
FACULTAD DE INGENIERÍA Y ARQUITECTURA
ESCUELA PROFESIONAL DE INGENIERÍA DE SISTEMAS
Acreditada por ICACIT

#determinar el mayor de 3 números


if Num1 >= Num2:
NMayor = Num1
else:
NMayor = Num2
if Num3 >= NMayor:
NMayor = Num3
#Mostrar resultado (OUTPUT)
print(f"El número mayor de {Num1}, {Num2} y {Num3} es : {NMayor}")

4. Poner en funcionamiento.

PAGE
\*
UNIVERSIDAD ANDINA DEL CUSCO
FACULTAD DE INGENIERÍA Y ARQUITECTURA
ESCUELA PROFESIONAL DE INGENIERÍA DE SISTEMAS
Acreditada por ICACIT

Otra ejecución

Actividades: del 04 al 09 de setiembre de 2023

Actividad 1:

Elaborar un algoritmo que lea la temperatura del día y si es menor o igual que 15 C ° de
como resultado temperatura normal, si la temperatura es mayor a 15 C ° de como
resultado temperatura alta.

Actividad 2:

Elaborar un algoritmo en el que se ingrese tres edades, luego realice la suma, y si la suma
es mayor a 50 debe visualizar el mensaje “jóvenes” en caso contrario mostrar el mensaje
“adultos”.

Actividad 3:

La empresa Emusap tiene dos tarifas de acuerdo con el consumo del usuario. Si el consumo
del mes es menor o igual a 20 m3 cobra S/ 1.2 por m3 y si el consumo es mayor a 20 m3
cobra S/ 1.8 por m3. Elaborar un algoritmo que permita calcular el monto a cobrar a un
usuario según su consumo incluyendo el 18% de IGV.

Consumo Subtotal IGV Total


12 12*1.2=14.4 2.592 16.99

PAGE
\*
UNIVERSIDAD ANDINA DEL CUSCO
FACULTAD DE INGENIERÍA Y ARQUITECTURA
ESCUELA PROFESIONAL DE INGENIERÍA DE SISTEMAS
Acreditada por ICACIT

Actividad 4:
Elaborar un algoritmo que solicite:
- Nombre del producto
- Cantidad del producto
- Precio unitario
Calcular: Importe, el cual obtienes multiplicando la cantidad por el precio unitario
 Si el importe es mayor o igual a 5000 soles entonces se le otorgará un descuento del
20%, en caso contrario el descuento será del 10% sobre el importe.
 Subtotal, el cual obtienes al restar el descuento del importe
 IGV, lo calculas multiplicando el subtotal por el 18%
 Total, lo obtienes, sumando el subtotal más el IGV

REFERENCIAS BIBLIOGRÁFICAS

• Grupo Liebre. (2000). Algorítmica y programación, Primera edición. Cusco.


• Joyanes Aguilar, L. (2008). Fundamentos de Programación. 4ta Edición. Madrid:
Editorial McGraw Hill.

VI. Ficha de calificación:

FICIHA DE CALIFICACIÓN Guía de aplicación N ° 02


Estructuras de control selectiva simple

Código………………………… Nombre y Apellidos del Estudiante………………………………………………


Criterio Puntaje Calificación obtenida por el
estudiante u observaciones

Ejercicios
1 Análisis (1 punto), Diseño (1 punto), Codificación
Y Ejecución 1 punto, elaboración de video o
5 puntos exposición (2 puntos)

Ejercicios
2 Análisis (1 punto), Diseño (1 punto), Codificación
Y Ejecución 1 punto, elaboración de video o
5 puntos exposición (2 puntos)

Ejercicios Análisis (1 punto), Diseño (1 punto), Codificación


3 Y Ejecución 1 punto, elaboración de video o
exposición (2 puntos)

PAGE
\*
UNIVERSIDAD ANDINA DEL CUSCO
FACULTAD DE INGENIERÍA Y ARQUITECTURA
ESCUELA PROFESIONAL DE INGENIERÍA DE SISTEMAS
Acreditada por ICACIT

5 puntos

Ejercicios
4 Análisis (1 punto), Diseño (1 punto), Codificación
Y Ejecución 1 punto, elaboración de video o
5 puntos exposición (2 puntos)

Total 20

PAGE
\*

También podría gustarte