M.算术式子判断(选择)
用户输入一个算术运算的式子,运算包括了+、-、*、/、%,首先输出该式子,如果运算符不在这5种操作内,输出运算符错误的信息;如果式子是正确的,输出式子正确的相应信息;如果式子是错误的,输出式子错误的相应信息。例如:
输入:1+2=3
输出:1+2=3 correct
输入:2/3=8
输出:2/3=8 wrong
输入:6&7=12
输出:6&7=12 error op
输入:一个算术式子
输出:该式子以及对错信息
代码见下:
expression=input()
lst=('+','-','*','/','%')
operator=-1
for i in lst:
if i in expression:
operator= i
break
if operator== -1:
print(expression, "error op")
else:
b=int(expression.find('='))
num1,num2=expression[:b].split(operator)
num1 =float(num1)
num2 =float(num2)
# 根据运算符计算结果并判断是否正确
if operator == "+":
result = num1 + num2
elif operator == "-":
result = num1 - num2
elif operator == "*":
result = num1 * num2
elif operator == "/":
if num2 == 0:
print(expression, "wrong")
else:
result = num1 / num2
elif operator == "%":
result = num1 % num2
a=int(expression.find('='))
last=expression[a+1:]
if result==float(last):
print(expression, "correct")
else:
print(expression, "wrong")