编写程序,用户从键盘输入一个算术表达式,数字都是十进制整型(必须支持负数),运算符支持+-*/()。
时间: 2023-11-14 12:06:36 浏览: 95
计算器(支持+,-,*,/)运算
好的,我可以为您提供一个Python代码示例,用于计算用户输入的算术表达式。请注意,此代码仅支持简单的四则运算和括号,并且不支持浮点数。
```python
def calculate(expression):
stack = []
num = 0
sign = "+"
for i in range(len(expression)):
if expression[i].isdigit():
num = num * 10 + int(expression[i])
if (not expression[i].isdigit() and not expression[i].isspace()) or i == len(expression) - 1:
if sign == "+":
stack.append(num)
elif sign == "-":
stack.append(-num)
elif sign == "*":
stack.append(stack.pop() * num)
elif sign == "/":
stack.append(int(stack.pop() / num))
num = 0
sign = expression[i]
return sum(stack)
expression = input("请输入算术表达式:")
result = calculate(expression)
print("结果为:", result)
```
您可以在命令行界面运行此代码,并输入算术表达式,例如:
```
请输入算术表达式:(1+2)*3-4/2
结果为: 7
```
阅读全文