Voici mon code:
cont = "Y" greeting = print("Hi, welcome to the calculator. What is your calculation?: ") num1 = float(input("What is the first number you would like to use? ")) op = input("Select operation: (+, -, /, *, **) ") num2 = float(input("What is the second number you would like to use? ")) if op == '+': x = num1 + num2 print (x) elif op == '-': x = num1 - num2 print(x) elif op == '/': x = num1 / num2 print(x) elif op == '*': x = num1 * num2 print(x) elif op == '**': x = num1 ** num2 print(x) else: print("error") pass cont = input("Would you like to use another term? (Y/N): ") while cont == "Y": op1 = input("Select operation: (+, -, /, *, **)") num = float(input(("Input the next number: "))) if op1 == '+': y = x + num print (y) cont = input("Would you like to continue? (Y/N): ") elif op1 == '-': z = x - num print(z) cont = input("Would you like to continue? (Y/N): ") elif op1 == '/': div = x / num print(div) cont = input("Would you like to continue? (Y/N): ") elif op1 == '*': mult = x * num print(mult) cont = input("Would you like to continue? (Y/N): ") elif op1 == '**': car = (x ** num) print(car) cont = input("Would you like to continue? (Y/N): ") else: print("error") pass else: print("Finished")
3 Réponses :
Vous pouvez réutiliser la même variable. Au lieu d'écrire Y / Z / DIV / MUT / CAR = ..., vous pouvez remplacer tout le x = .... p>
Vous pouvez utiliser une liste pour stocker des données
Vous devez attribuer la dernière réponse à toujours X, de cette façon, cela peut fonctionner à chaque fois que vous le répétez. Par exemple: maintenant Ce programme peut fonctionner pour toujours comme la dernière réponse est toujours réaffectée à x. P> Si vous n'êtes pas sûr des lignes du code que j'ai utilisé pour effectuer les opérations, par exemple: p> Ça rend simplement votre code un peu plus propre. p> Conclusion: en faisant toujours attribuer la variable "X" à la réponse du calcul précédent, nous pouvons répéter infiniment les opérations qu'il est toujours stockée, puis réaffectée pour s'adapter à la prochaine itération du programme. P> P>
Créez une variable en dehors de la boucle qui garde une trace du dernier résultat
Avez-vous essayé d'enregistrer le résultat de chaque opération dans
x code>? Quelque chose comme
x = x * num code> calcule le produit à l'aide de l'ancien
x code>, puis enregistre le résultat dans
x code>
Pourquoi ne pas stocker le nouveau résultat dans x? Pourquoi le stockez-vous en différents noms de variables pour différentes opérations?
Aussi, vous devriez considérer le principe sec. Chaque fois que vous voyez vous-même écrire le même code encore et encore, il y a probablement un meilleur moyen de l'écrire.
@MirrorMaster Dont des réponses ont répondu à votre question?