Sorprende a tus compañeros de clases o a tus amigos del trabajo con la construcción de una calculadora hecha con Python.
import math
def menu():
print(«\n— CALCULADORA CIENTÍFICA —«)
print(«1. Suma»)
print(«2. Resta»)
print(«3. Multiplicación»)
print(«4. División»)
print(«5. Potencia»)
print(«6. Raíz cuadrada»)
print(«7. Seno»)
print(«8. Coseno»)
print(«9. Tangente»)
print(«10. Logaritmo base 10»)
print(«11. Logaritmo natural (ln)»)
print(«0. Salir»)
def calculadora():
while True:
menu()
opcion = input(«Elige una opción: «)
if opcion == "0":
print("¡Hasta luego!")
break
try:
if opcion in ["1", "2", "3", "4", "5"]:
a = float(input("Ingresa el primer número: "))
b = float(input("Ingresa el segundo número: "))
if opcion == "1":
print(f"Resultado: {a + b}")
elif opcion == "2":
print(f"Resultado: {a - b}")
elif opcion == "3":
print(f"Resultado: {a * b}")
elif opcion == "4":
if b == 0:
print("Error: división entre cero.")
else:
print(f"Resultado: {a / b}")
elif opcion == "5":
print(f"Resultado: {a ** b}")
elif opcion == "6":
a = float(input("Ingresa el número: "))
if a < 0:
print("Error: no se puede calcular la raíz cuadrada de un número negativo.")
else:
print(f"Resultado: {math.sqrt(a)}")
elif opcion in ["7", "8", "9"]:
angulo = float(input("Ingresa el ángulo en grados: "))
rad = math.radians(angulo)
if opcion == "7":
print(f"Seno({angulo}°) = {math.sin(rad)}")
elif opcion == "8":
print(f"Coseno({angulo}°) = {math.cos(rad)}")
elif opcion == "9":
print(f"Tangente({angulo}°) = {math.tan(rad)}")
elif opcion == "10":
a = float(input("Ingresa el número: "))
if a <= 0:
print("Error: el logaritmo base 10 solo está definido para números positivos.")
else:
print(f"log10({a}) = {math.log10(a)}")
elif opcion == "11":
a = float(input("Ingresa el número: "))
if a <= 0:
print("Error: el logaritmo natural solo está definido para números positivos.")
else:
print(f"ln({a}) = {math.log(a)}")
else:
print("Opción no válida.")
except ValueError:
print("Error: por favor ingresa un número válido.")
Características del código:
Funciona en bucle hasta que el usuario elige salir.
Usa el módulo math
para funciones científicas.
Convierte ángulos de grados a radianes para funciones trigonométricas.
Tiene manejo de errores como división por cero o logaritmos inválidos.