2017-03-28 4 views
0

Le programme est censé faire les fonctions décrites sur les nombres donnés, mais j'obtiens une erreur après que je donne le deuxième nombre.Comment puis-je créer un programme Python 3.x permettant à l'utilisateur de contrôler ce que fait le programme?

Code

num1=int(input("Give me a number: ")) 
num2=int(input("Give me another number: ")) 

add=int(("For addition, press [1].")) 
time.sleep(2) 
sub=int(print("For subtraction, press [2].")) 
time.sleep(2) 
div=int(("For division, press [3].")) 
time.sleep(2) 
multi=int(("For multiplication, press [4].")) 
time.sleep(2) 
print("Please input an option and press [RETURN].") 

if input == 1: 
    ans=num1+num2 
if input == 2: 
    ans=num1+num2 

Toutes les idées sur la façon dont je peux améliorer mon code?

+0

'add = int (("Pour plus, appuyez sur [1].")) 'essaie de convertir une chaîne en un int puis de l'enregistrer dans une variable. Peut-être que vous vouliez dire «imprimer» et non «int»? Sinon, cela va vous donner une erreur sur la conversion d'une chaîne en un int. De même, 'si input == 1' ne référence aucune des variables que vous avez créées, je ne vois donc pas comment cela fonctionnerait. –

+0

@RandomDavis oui, je voulais l'imprimer, et avoir les options [1] [2] [3] [4] activer les aspects addition/soustraction/multiplication/division du code, mais je ne peux pas le faire fonctionner . – WhiteTail

Répondre

0

Si vous voulez obtenir une entrée remplacer par ceci:

add = int(input("For addition, press [1]. ")) 
+0

Ce n'est pas une solution au problème. OP voulait imprimer ces lignes, ne pas avoir de commentaires d'eux. –

+0

@RandomDavis Je voulais * les deux * – WhiteTail

+0

@WhiteTail Vous vouliez seulement obtenir une entrée et imprimer 4 lignes, non? Ce que vous sous-entendez, c'est que vous vouliez obtenir 4 entrées, une pour chaque ligne imprimée. Mais vous ne vérifiez qu'une seule valeur à la fin, ce qui implique que vous voulez seulement obtenir une entrée (en plus des deux premiers nombres). De plus, la réponse d'Abijith Mg semble être une bonne solution. –

1

Version simplifiée:

print "Basic calculator" 

num1=int(input("Enter number 1: ")) 
num2=int(input("Enter the other number: ")) 

choice=int(input("For addition, press [1].\n" 
    "For subtraction, press [2].\n" 
    "....\n" 
    "Please input the operation and press [RETURN].")) 
time.sleep(2) 

if choice == 1: 
    ans=num1+num2 
elif choice == 2: 
    ans=num1-num2 
    ... 

print "Answer is {}".format(ans)