Foros aprenderaprogramar.com
Aprender a programar => Aprender a programar desde cero => Mensaje iniciado por: Sixtoex en 12 de Mayo 2024, 00:53
-
Este ejercicio consiste en crear una calculadora simple en Python que permita al usuario realizar operaciones aritméticas básicas como suma, resta, multiplicación y división. El programa debe mostrar un menú inicial con instrucciones y solicitar al usuario que ingrese dos números y la operación que desea realizar. Una vez que se realiza la operación, el programa debe mostrar el resultado. Luego, el usuario puede continuar realizando más operaciones ingresando una nueva operación y un nuevo número, o puede salir del programa escribiendo 'salir'.
Explicación del enunciado:
Calculadora simple en Python: El objetivo principal es crear una calculadora básica utilizando Python.
Operaciones aritméticas básicas: La calculadora debe permitir realizar suma, resta, multiplicación y división.
Menú inicial con instrucciones: El programa debe mostrar un menú inicial con instrucciones sobre cómo utilizarlo.
Solicitar números y operación: El programa debe solicitar al usuario que ingrese dos números y la operación que desea realizar.
Mostrar resultado: Después de realizar la operación, el programa debe mostrar el resultado.
Continuar con más operaciones: El usuario debe poder continuar realizando más operaciones ingresando una nueva operación y un nuevo número.
Salir del programa: El usuario puede salir del programa escribiendo 'salir'.
aqui os dejo el codigo
# curso
print("bienvenido a la calculadora de aprendeprogramar")
print("para salir escribe salir")
print("las operaciones son suma,resta,division,multiplicacion")
ya_inicio = 0
ingrese_numero = 0
ingrese_operacion = "nada"
ingrese_otronumero = 0
suma = 0
for numero in range(10):
if ingrese_operacion == "salir":
break
ingrese_numero = int(input("Ingrese numero: "))
ingrese_operacion = input("Ingrese operacion: ")
ingrese_otronumero = int(input("Ingrese el siguiente numero: "))
if ingrese_operacion == "suma":
suma = ingrese_numero + ingrese_otronumero
print(f"La suma es: {suma}")
elif ingrese_operacion == "resta":
suma = abs(ingrese_numero - ingrese_otronumero)
print(f"La resta es: {suma}")
elif ingrese_operacion == "multiplicacion":
suma = abs(ingrese_numero * ingrese_otronumero)
print(f"La multiplicacion es: {suma}")
elif ingrese_operacion == "division":
suma = abs(ingrese_numero / ingrese_otronumero)
print(f"La division es: {suma}")
for otronumero in range(100):
if ingrese_operacion == "suma" or ingrese_operacion == "resta" or ingrese_operacion == "multiplicacion" or ingrese_operacion == "division":
ingrese_operacion = input("Ingrese operacion: ")
if ingrese_operacion == "salir":
break
ingrese_otronumero = int(input("Ingrese el siguiente numero: "))
if ingrese_operacion == "resta":
suma = abs(ingrese_otronumero - suma)
print(f"La resta es: {suma}")
if ingrese_operacion == "suma":
suma = abs(ingrese_otronumero + suma)
print(f"La suma es: {suma}")
if ingrese_operacion == "multiplicacion":
suma = abs(ingrese_otronumero * suma)
print(f"La multiplicacion es: {suma}")
if ingrese_operacion == "division":
suma = abs(suma / ingrese_otronumero)
print(f"La division es: {suma}")
-
Gracias por compartirlo.
Otra solución sería usando un bucle while que se repita hasta que el usuario indique que quiere salir.
Los bucles while son más cómodos en casos en los que NO sabemos exactamente cuántas veces se va a repetir algo. Los bucles for son más apropiados para los casos en que SÍ sabemos cuántas veces se ha de repetir su código.
Así no hay necesidad de "romper"(break) el bucle
print("bienvenido a la calculadora de aprendeprogramar")
print("las operaciones son suma,resta,division,multiplicacion\n")
num1 = 0
num2 = 0
operacion = "nada"
resultado = 0
salir = "no"
while salir != "si":
num1 = int(input("Ingrese 1er numero: "))
num2 = int(input("Ingrese 2do numero: "))
operacion = input("Ingrese operacion: ")
if operacion == "suma":
resultado = num1 + num2
print(f"La suma es: {resultado}")
elif operacion == "resta":
resultado = abs(num1 - num2)
print(f"La resta es: {resultado}")
elif operacion == "multiplicacion":
resultado = abs(num1 * num2)
print(f"La multiplicacion es: {resultado}")
elif operacion == "division":
resultado = abs(num1 / num2)
print(f"La division es: {resultado}")
else:
print("Operacion no reconocida...")
salir = input("\nDesear salir?(si/no): ").lower()
print("\n\t\tFIN DE PROGRAMA")
-
Gracias por compartirlo.
Otra solución sería usando un bucle while que se repita hasta que el usuario indique que quiere salir.
Los bucles while son más cómodos en casos en los que NO sabemos exactamente cuántas veces se va a repetir algo. Los bucles for son más apropiados para los casos en que SÍ sabemos cuántas veces se ha de repetir su código.
Así no hay necesidad de "romper"(break) el bucle
print("bienvenido a la calculadora de aprendeprogramar")
print("las operaciones son suma,resta,division,multiplicacion\n")
num1 = 0
num2 = 0
operacion = "nada"
resultado = 0
salir = "no"
while salir != "si":
num1 = int(input("Ingrese 1er numero: "))
num2 = int(input("Ingrese 2do numero: "))
operacion = input("Ingrese operacion: ")
if operacion == "suma":
resultado = num1 + num2
print(f"La suma es: {resultado}")
elif operacion == "resta":
resultado = abs(num1 - num2)
print(f"La resta es: {resultado}")
elif operacion == "multiplicacion":
resultado = abs(num1 * num2)
print(f"La multiplicacion es: {resultado}")
elif operacion == "division":
resultado = abs(num1 / num2)
print(f"La division es: {resultado}")
else:
print("Operacion no reconocida...")
salir = input("\nDesear salir?(si/no): ").lower()
print("\n\t\tFIN DE PROGRAMA")
lo hice con while, y si que es verdad que esta mejor adaptado para este ejercicio:
print("bienvenido a la calculadora de aprendeprogramar")
print("para salir escribe salir")
print("las operaciones son suma,resta,division,multiplicacion")
resultado = ""
op = ""
resultado2 = ""
while True:
if not resultado:
resultado = input("Escribe el primer numero: ")
if resultado == "salir":
break
resultado = int(resultado)
op = input("Escribe la operacion: ")
if op == "salir":
break
n2 = input("Escribe el siguiente numero: ")
if n2 == "salir":
break
n2 = int(n2)
if op == "suma":
resultado += n2
print(f"el resultado es: {resultado}")
elif op == "resta":
resultado -= n2
print(f"el resultado es: {resultado}")
elif op == "divi":
resultado /= n2
print(f"el resultado es: {resultado}")
elif op == "multi":
resultado *= n2
print(f"el resultado es: {resultado}")
else:
print("escribe una operacion valida")