循环中的标志计算器



我需要在While循环中使用一个操作数变量制作计算器。根据布尔变量的不同,我们只依次输入操作符或操作数,当输入"="操作符,输出所有操作的结果并退出循环

result = 0
operand = None
operator = None
wait_for_number = True
while operator != '=':
if wait_for_number == True:
operand = float(input('Write operand: '))
wait_for_number = False
if wait_for_number == False:
operator = str(input('Write operator: '))
if operator == '+':
result += operand
wait_for_number = True
if operator == '-':
result -= operand
wait_for_number = True
if operator == '/':
result /= operand
wait_for_number = True
if operator == '*':
result *= operand
wait_for_number = True
print(result)

你的代码中有一些逻辑错误,看看这个,你可以从这里修改和优化:

result = float(input('Write operand: '))
wait_for_number = False
while True:
if wait_for_number == False:
operator = str(input('Write operator: '))
if operator == '=':
break
wait_for_number = True
if wait_for_number == True:
operand = float(input('Write operand: '))
if operator == '+':
result += operand
if operator == '-':
result -= operand
if operator == '/':
result /= operand
if operator == '*':
result *= operand
wait_for_number = False
print(result)

最新更新