我正在建立一个系统,在该系统中,您可以输入任意数量的数字,然后可以按“ f”停止。输入数字之前,可以选择一种类型。仅加法类型有效。乘法和除法没有。
#Selecting a type
type = input('What type? (+,*, or /)')
while number != 'f':
number = input('Enter a number. Press f to stop entering numbers.')
if number != 'f':
#I think it is going wrong here.
if type == '+':
current_number += float(number)
elif type == '*':
current_number *= float(number)
elif type == '/':
current_number /= float(number)
print('Your answer is ' + str(current_number) + '.')
我希望答案是正确的答案,但是每次都能给我0.0。
答案 0 :(得分:2)
current_number
。
假设您从current_number = 0
开始,除法和乘法结果以0结尾就不足为奇了。
0 *任何= 0
0 /任何= 0
答案 1 :(得分:0)
因此,您的代码不起作用,因为从未初始化过number
和current_number
,但我将假设您为它们提供了""
和{{1 }}(考虑加法如何为您工作)
0.0
用于python中的任何float n,因此您需要在乘法模式下将其初始化为0.0 * n == 0.0
。