1. Tarea
Instrucciones: Para cada uno de los siguientes ejercicios sobre Algoritmos secuenciales y decisiones, describa un algoritmo en diagrama de flujo o seudocódigo y realice dos pruebas de escritorio.
Los ejercicios son básicos para estructuras de control con condicionales "If-else". Para resolver los ejercicios se recomienda enfocarse en la parte de casos o condiciones del problema.
1.1. Un comerciante compra un artículo a un costo dado. Determine el precio al cual debe venderlo si desea ganar el 15%.
1.2. Un alumno desea saber cual será su calificación final en cierta materia. Dicha calificación se compone de lo siguiente:
60% corresponde al examen escrito.
20% corresponde a las lecciones
15% corresponde a las tareas.
5% corresponde a las prácticas en el laboratorio
El dato del examen escrito es un valor entre 0 y 100 y los otros datos son valores entre 0 y 10. La calificación final debe ser un valor entre 0 y 20.
1.3. En un almacén se descuenta 20% del precio al cliente si el valor a pagarse es mayor a $200. Dado un valor de precio, muestre lo que debe pagar el cliente.
1.4. En un almacén se rebaja 10% del precio al cliente si compra mas de 20 artículos y 5% si compra hasta 20 artículos pero más de 10. Dado el precio unitario de un artículo y la cantidad adquirida, muestre lo que debe pagar el cliente .
1.5. Una frutería ofrece las manzanas con descuento según la siguiente tabla:
| kilos comprados | Descuento % |
|---|---|
| 0 - 2 | 0% |
| 2.01 - 5 | 10 % |
| 5.01 - 10 | 15 % |
| 10.01 en adelante | 20 % |
Dado el precio por kilo, y el peso, determinar cuánto pagará una persona que compre manzanas es esa frutería.
1.6. En un circuito eléctrico hay tres interruptores, los cuales pueden estar en estado cerrado(1) o abierto(0).

Para que un equipo funcione, se requiere que al menos dos estén cerrados. Si los datos son el estado de los interruptores, determine si el equipo funcionará.
1.7. Ingrese tres números correspondientes a un conjunto y tres números correspondientes a otro conjunto.
Muestre los números que corresponden a la intersección de los dos conjuntos.
Sugerencia: Usa una variable para cada elemento del conjunto
conjunto
A = [4 5 7 ]
B = [2 7 9]
A ∩ B = 7
1.8 Dados los 9 elementos de una matriz cuadrada, encuentre el valor de su determinante sea diferente de cero.
matriz = \begin{pmatrix}a & b & c \\ d & e & f \\ g & h & i \end{pmatrix}1.9. En el ejercicio anterior, suponga que la matriz está asociada a un sistema de tres ecuaciones lineales. Ingrese las constantes de las tres ecuaciones y encuentre el valor de las variables.
1.10. Lea los valores de los lados de un triángulo. Determine y muestre un mensaje correspondiente a su tipo (1. EQUILÁTERO, 2. ISÓSCELES, O 3. ESCALENO)

12. Lea las tres dimensiones de un bloque rectangular.
Encuentre las tres diagonales de sus caras diferentes y determine si pudiera atravesar por un orificio circular de diámetro dado.

2. Ejemplos
Ejercicios resueltos en Python y diagramas de flujo como ejemplos de las estructuras de control para condicionales if else (selección).
2.1 Ejercicio
Referencia: Tarea 1 ejercicio 6. interruptores para encender un foco
En un circuito eléctrico hay tres interruptores, los cuales pueden estar en estado cerrado(1) o abierto(0).

Para que un equipo funcione, se requiere que al menos dos estén cerrados. Si los datos son el estado de los interruptores, determine si el equipo funcionará.
Desarrollo:
Al inicio, supone que el foco no está encendido (0) .

Instrucciones en Python
# Ejercicio 6. Interruptores y un foco
# INGRESO
a = int(input('interruptor a: '))
b = int(input('interruptor b: '))
c = int(input('interruptor c: '))
# PROCEDIMIENTO
encendido = 0
if (a==1):
if (b==1 or c ==1):
encendido = 1
else:
if (b==1):
if (c==1):
encendido = 1
# SALIDA
print('estado del foco: ',encendido)
Escriba otras propuestas de solución.
2.2. Ejercicio
Referencia: Tarea 1 ejercicio 12. Bloque rectangular pasa por orificio en pared.
Lea las tres dimensiones de un bloque rectangular.

Encuentre las tres diagonales de sus caras diferentes y determine si pudiera atravesar por un orificio circular de diámetro dado.
Nota: Para el desarrollo considere usar la diagonal de cada lado, que es la parte de mayor longitud que debe pasar por el diámetro del círculo.

Desarrollo de algoritmo
# Problema de la caja y el orificio en la pared
import numpy as np
# INGRESO
a = float(input("lado a: "))
b = float(input('lado b: '))
c = float(input('lado c: '))
d = float(input('lado d: '))
# PROCEDIMIENTO
diagonal1 = np.sqrt(a**2 + c**2)
diagonal2 = np.sqrt(a*a + b*b)
diagonal3 = np.sqrt(b*b + c*c)
pasa = 0
if (diagonal1<d):
pasa = 1
if (diagonal2<d):
pasa = 1
if (diagonal3<d):
pasa = 1
# SALIDA
print(pasa)
Tarea: Realizar diagrama de Flujo. Desarrollado en Pizarra durante la clase
2.3. Ejercicio
Referencia: 1Eva2007TI_T1 Tiro al blanco con dardos
Desarrollado para la primera semana de clases.

Considere solo la parte de condicionales, a partir del ingreso de las coordenadas x,y donde cae el dardo.

Desarrollo de algoritmo
# Un dardo en tablero
# 1ra Evaluación I Término 2007. Tema 1
import numpy as np
# INGRESO
x = float(input('coordenada x: '))
y = float(input('coordenada y: '))
# PROCEDIMIENTO
distancia = np.sqrt(x**2 + y**2)
premio = 0
if (distancia <= 10):
premio = 50
if (distancia>10 and distancia<=40):
premio = 40
if (distancia>40 and distancia<=80):
premio = 30
# SALIDA
print('el premio obtenido es: ', premio)
2.4 Ejercicio
Referencia: 1Eva2005TI_T4 Lanza penales
Desarrollado para un solo penal.
Dado el sector del arco [1,6] donde un jugador lanza el balón y el sector donde el arquero protege, determinar:
a) si hubo gol (1 ó 0)
b) si hubo gol, indicar si fué por izquierda (1), centro(2), derecha(3)

Desarrollo de algoritmo
Se inicia considerando que no hubo gol, por lo que la sección=0 para el área donde entró el gol. Hay gol si jugador ≠ jugador.
Diagrama de Flujo

Instrucciones en Python
# analizar un penal
# Parcial I Término 2005. Tema 4.
# INGRESO
jugador = int(input('sector del jugador:'))
arquero = int(input('sector del arquero:'))
# PROCEDIMIENTO
seccion = 0
if not(jugador==arquero):
gol = 1
if (jugador==3 or jugador==4):
seccion = 1
if (jugador==2 or jugador==5):
seccion = 2
if (jugador== 1 or jugador==6):
seccion = 3
else:
gol = 0
# SALIDA
print('Hubo gol: ',gol)
print('seccion: ', seccion)
2.5 Ejercicio
Referencia: Tarea 1 ejercicio 3. Ganancia sobre costo
En un almacén se descuenta 20% del precio al cliente si el valor a pagarse es mayor a $200.

Dado un valor de precio, muestre lo que debe pagar el cliente.
2.6 Ejercicio
Referencia: Tarea 1 ejercicio 5. Aplicar descuentos en compras al por mayor
Una frutería ofrece las manzanas con descuento según la siguiente tabla:
| kilos comprados | Descuento % |
|---|---|
| 0 - 2 | 0% |
| 2.01 - 5 | 10 % |
| 5.01 - 10 | 15 % |
| 10.01 en adelante | 20 % |
Dado el precio por kilo, y el peso, determinar cuánto pagará una persona que compre manzanas es esa frutería.
Desarrollo de algoritmo
