“UNIVERSIDAD TECNOLÓGICA DEL PERÚ”
FACULTAD DE INGENIERÍA
ASIGNATURA: PROGRAMACION DE
COMPUTADORAS
SEMESTRE: 2025-2
🔴 PC1
ALUMNOS:
Garces Araos, Gerall Alexander -U23237631
Atencio Ayala , Miguel Junior - 1310483
Adrian Guillermo Pezo Catashunga -U20218499
Definimos las funciones de operaciones
def sumar(x, y):
return x + y 1
def restar(x, y):
return x - y
def multiplicar(x, y):
return x * y
def dividir(x, y):
return x / y
def potencia(x, y):
return x ** y # x elevado a y
def raiz(x, y=None):
return x ** 0.5 # solo usamos x
# Diccionario que asocia cada operador con su función
operaciones = {
"+": sumar,
"-": restar,
"*": multiplicar,
"/": dividir,
"^": potencia,
"√": raiz
}
operador = input("Ingresa el operador ejemplo(* + - /): ")
numero1 = input("Ingresa el primer número: ")
if operador != "√":
numero2 = input("Ingresa el segundo número: ")
a = float(numero1)
b = float(numero2)
else:
a = float(numero1)
b = None
op = operador
if op in operaciones:
# Intentar realizar la operación
try:
resultado = operaciones[op](a, b)
print("Resultado:", resultado)
except ZeroDivisionError:
print("Error: no puedes dividir entre 0.")
else:
print("Operador no válido. Usa +, -, * o /")
def calcularIMC(p,a):
return p/(a*a)
def nivelDePeso(IMC):
2
if IMC< 18.5:
return "Bajo de Peso"
elif 18.5<= IMC <=24.9:
return"Normal"
elif 25<= IMC <=29.9:
return"SobrePeso"
elif 30<= IMC <=34.9:
return"Obesidad1"
elif 35<= IMC <=39.9:
return"Obesidad2"
elif 40<= IMC <=49.9:
return"Obesidad3"
elif IMC >=50:
return"Obesidad5"
peso = float(input("Ingrese el peso (kg) :"))
altura = float(input("Ingrese la altura (m) :"))
print("Su nivel de peso es :", nivelDePeso(calcularIMC(peso,altura)))
#En este primer caso el conteo enmpieza en 10 y va aumentando hasta 90
#de 10 en 10
for i in range(10,100,10):
3
print(i)
#En este segundo caso el conteo enmpieza en 1 y va aumentando hasta 19
#de 1 en 1
for a in range(1,20,1):
print(a)
#En este tercer caso el conteo enmpieza en 50 y va aumentando hasta 0
#de 10 en 10, pero al ser un numero inferior el final (-1), no se logra contar
#y no da resultado
for b in range(50,-1,10):
print(b)
# Valor máximo
n = int(input("Ingrese el valor máximo (n): "))
# Iniciamos contador
contador = 0 4
# Bucle infinito
while True:
dato = input("Presiona ENTER para aumentar el contador o escribe 'F' para terminar: ")
if dato == "F":
break
# Aumentamos el contador
dato = dato + 1
# Si pasa de n, reiniciar a 0
if dato > n:
dato = 0
# Mostrar el valor del contador
print("Contador:", dato)
#Calculadora de numeros complejos
def mostrar_menu():
print("\n--- Calculadora de Números Complejos ---")
print("1. Sumar")
print("2. Restar")
5
print("3. Multiplicar")
print("4. Dividir")
print("5. Salir")
def ingresar_numero_complejo(orden):
print(f"Ingresar el {orden} número complejo:")
real = float(input("Parte real: "))
imaginario = float(input("Parte imaginaria: "))
return complex(real, imaginario)
def main():
while True:
mostrar_menu()
opcion = input("Selecciona una opción (1-5): ")
if opcion == '5':
print("¡Hasta luego!")
break
z1 = ingresar_numero_complejo("primer")
z2 = ingresar_numero_complejo("segundo")
if opcion == '1':
resultado = z1 + z2
operacion = "+"
elif opcion == '2':
resultado = z1 - z2
operacion = "-"
elif opcion == '3':
resultado = z1 * z2
operacion = "*"
elif opcion == '4':
if z2 == 0:
print("Error: No se puede dividir por cero.")
continue
resultado = z1 / z2
operacion = "/"
else:
print("Opción inválida.")
continue
print(f"\nResultado: ({z1}) {operacion} ({z2}) = {resultado}")
def mostrar_menu():
print("\n--- Calculadora de Números Complejos ---")
print("1. Sumar")
print("2. Restar")
print("3. Multiplicar")
print("4. Dividir")
print("5. Salir")
5
def ingresar_numero_complejo(orden):
print(f"Ingresar el {orden} número complejo:")
real = float(input("Parte real: "))
imaginario = float(input("Parte imaginaria: "))
return complex(real, imaginario)
def main():
while True:
mostrar_menu()
opcion = input("Selecciona una opción (1-5): ")
if opcion == '5':
print("¡Hasta luego!")
break
z1 = ingresar_numero_complejo("primer")
z2 = ingresar_numero_complejo("segundo")
if opcion == '1':
resultado = z1 + z2
operacion = "+"
elif opcion == '2':
resultado = z1 - z2
operacion = "-"
elif opcion == '3':
resultado = z1 * z2
operacion = "*"
elif opcion == '4':
if z2 == 0:
print("Error: No se puede dividir por cero.")
continue
resultado = z1 / z2
operacion = "/"
else:
print("Opción inválida.")
continue
print(f"\nResultado: ({z1}) {operacion} ({z2}) = {resultado}")
if _name_ == "_main_":
main()