Calculadora Python

Iniciado por V1c70r, 26 Julio 2018, 17:34 PM

0 Miembros y 1 Visitante están viendo este tema.

V1c70r

Hola buenas! Estoy aprendiendo a programar en python y como primer programa he decidido hacer una calculadora sencilla, pero no se por que me da un error en la parte de la funcion if y no se por que, os agradecería vuestra ayuda.

print("""Menú:
a) Suma
b) Resta
c) Multiplicación
d) División""")

#Variables abajo
opc = str(input("Excoge tu opcion: "))
x = int(input("Pon tu numero: "))
y = int(input("Pon tu otro numero: "))

if opc == "a":
print("Este es tu resultado: ")
print(x+a)
input()
elif opc == "b":
print("Este es tu resultado: ")
print(x-y)
input()
elif opc == "c":
print("Este es tu resultado: ")
print(x*y)
input()
elif opc == "d":
print("Este es tu resultado: ")
print(x//y)
input()

Thiamatt

#1
Hola!

El único error que encontré fue en la operación de suma, ya que sumaste el valor de X (O sea el primer número) con el valor A (O sea el valor que determina la sección a ir)

Te debería quedar algo así:


print("Menú: ")
print("a) Suma")
print("b) Resta")
print("c) Multiplicación")
print("d) División")

#Variables abajo
opc = str(input("Excoge tu opcion: "))
x = int(input("Pon tu numero: "))
y = int(input("Pon tu otro numero: "))

if opc == "a":
print("Este es tu resultado: ")
print(x+y) # OPERACIÓN REEMPLAZADA :V
input()
elif opc == "b":
print("Este es tu resultado: ")
print(x-y)
input()
elif opc == "c":
print("Este es tu resultado: ")
print(x*y)
input()
elif opc == "d":
print("Este es tu resultado: ")
print(x//y)
input()


Tambien te recomiendo especificar más tu problema, ya que son resultados muy amplios. Como así también, mejoraría un par de cosas en cuanto a la estructura del código.

Suerte!
PD: Todo tema con Python debería de ir en la sección "Scripting"

<Trocutor>

Aqui os dejo mi calculadora por si os gusta, lo unico, es para Mac OS X pero si la modificas la puedes usar a tu antojo <3


Código (python) [Seleccionar]
# Calculadora
def Calculadora():
   """Funcion Para Calcular Operaciones Aritmeticas"""
   Menu()
   opc = int(input("Selecciona una opcion: "))
   if opc == 6:
    os.system('clear')

   while (opc > 0 and opc < 6):
       x = int(input("Ingrese un numero: "))
       y = int(input("Ingrese otro numero: "))
       x2 = str(x)
       y2 = str(y)

       if (opc == 1):
           z = x+y          
           txt = str(z)
           print('La Suma de ',x,' mas ',y,' es igual a:', x+y)
           os.system('say La suma de ' + x2 + ' mas ' + y2 + 'es igual a '  + txt)
           opc = int(input("Seleccione una opcion: "))
       elif(opc == 2):
           z = x-y
           txt = str(z)
           print('La resta de ',x,' menos ',y,' es igual a:', x-y)
           os.system('say La respuesta de ' + x2 + ' menos ' + y2 + ' es igual a ' + txt)
           opc = int(input("Seleccione una opcion: "))
       elif(opc == 3):
           z = x*y
           txt = str(z)
           print('La Multiplicacion de ',x,' por ',y,' es igual a:', x*y)
           os.system('say La multiplicación de ' + x2 + ' por ' + y2 + ' es igual a ' + txt)
           opc = int(input("Seleccione una opcion: "))
       elif(opc == 4):
           try:
             z = x//y
             txt = str(z)
             print('La Division de ',x,'entre',y,' es igual a: ', x//y)
             os.system('say La división de ' + x2 + ' entre ' + y2 + ' es igual a: ' + txt)
             opc = int(input("Seleccione una opcion: "))
           except ZeroDivisionError:
             print("No se permite la division entre 0")
             opc = int(input("Seleccione una opcion: "))
       elif(opc == 5):
           z = x**y
           txt = str(z)
           print('El resultado de ',x,' elevado a ',y,' es igual a: ', x**y)
           os.system('say El resultado de ' + x2 + ' elevado a ' + y2 + ' es igual a ' + txt)
           opc = int(input("Seleccione una opcion: "))






Código (python) [Seleccionar]
# Menú para la calculadora
def Menu():
    """Funcion que Muestra el Menu"""
    print("""************
Calculadora
************
      Menu     
      1) Suma
      2) Resta
      3) Multiplicacion
      4) Division     
      5) Elevar
      6) Salir""")