利用异常处理,写一个简单的计算器程序: 实现简单的加减乘除,例如1+2 能够实现循环,算完一个算式不会退出循环 输入C可以关机退出循坏 异常情况:(1)除数不能为季,(2)没有按照格式输入,例如1+2
时间: 2024-09-23 16:08:10 浏览: 39
当然,我们可以编写一个简单的控制台计算器程序,利用Python来实现这个功能。下面是一个示例代码:
```python
def calculate():
while True:
try:
user_input = input("请输入计算表达式(如1+2或C退出): ")
# 检查是否为退出指令
if user_input.lower() == 'c':
print("已关闭计算器.")
break
# 分割用户输入并转换为数字
parts = user_input.split()
if len(parts) != 3 or not parts[0].isdigit() or not parts[2].isdigit():
raise ValueError("输入格式错误,请按格式1 + 2 输入.")
num1, operator, num2 = float(parts[0]), parts[1], float(parts[2])
# 异常处理除数为零的情况
if operator == '/' and num2 == 0:
raise ZeroDivisionError("除数不能为零.")
# 根据运算符进行相应的计算
if operator == '+':
result = num1 + num2
elif operator == '-':
result = num1 - num2
elif operator == '*':
result = num1 * num2
elif operator == '/':
result = num1 / num2
else:
raise ValueError("无效的运算符,请使用 +、-、* 或 /.")
print(f"结果是: {result}")
except ValueError as ve:
print(f"错误: {ve}")
except ZeroDivisionError as zde:
print(f"错误: {zde}")
calculate()
```
在这个程序中,我们首先创建一个无限循环,提示用户输入表达式。如果输入的是"C",则跳出循环。然后尝试解析用户的输入并执行计算,如果有不符合要求的输入(比如格式错误或除数为零),会捕获并显示对应的异常信息。
阅读全文