我的加法和乘法工作得很好。但是,對於減法,如果我輸入2個數字,3和1,答案將是-2,這顯然是不正確的。分部也無法正常運作。錯誤的計算器減法和除法結果
我可以輸入2個數字,8和4,它會告訴我答案是0.5,這也是不正確的。
我的代碼出了什麼問題?
print("Welcome to Calculator!")
class Calculator:
def addition(self,x,y):
added = x + y
return added
def subtraction(self,x,y):
subtracted = x - y
return subtracted
def multiplication(self,x,y):
multiplied = x * y
return multiplied
def division(self,x,y):
divided = x/y
return divided
calculator = Calculator()
print("1 \tAddition")
print("2 \tSubtraction")
print("3 \tMultiplication")
print("4 \tDivision")
operations = int(input("What operation would you like to use?: "))
x = int(input("How many numbers would you like to use?: "))
if operations == 1:
a = 0
sum = 0
while a < x:
number = int(input("Please enter number here: "))
a += 1
sum = calculator.addition(number,sum)
print("The answer is", sum)
if operations == 2:
s = 0
diff = 0
while s < x:
number = int(input("Please enter number here: "))
s += 1
diff = calculator.subtraction(number,diff)
print("The answer is", diff)
if operations == 3:
m = 0
prod = 1
while m < x:
number = int(input("Please enter number here: "))
m += 1
prod = calculator.multiplication(number, prod)
print("The answer is", prod)
if operations == 4:
d = 0
quo = 1
while d < x:
number = int(input("Please enter number here: "))
d += 1
quo = calculator.division(number, quo)
print("The answer is", quo)
在「控制面板事情」改變與其他的像這樣的變量'other_diff = calculator.subtraction (數字,差異)'你正在累積相同的數字,就像你正在做一些奇怪的遞歸,並考慮使用更多的括號,因爲你正在使用python3x –
謝謝!這有助於解決減法問題,但分裂呢? –
您的發送編號和差異順序作爲參數發送錯誤的 –