利用异常处理,写一个简单的计算器程序: 实现简单的加减乘除,例如1+2 能够实现循环,算完一个算式不会退出循环 输入C可以关机退出循环 异常情况:(1)除数不能为零,(2)没有按照格式输入,例如1+2
时间: 2024-09-23 16:08:14 浏览: 37
51单片机串口通信计算器-串口实现简单计算器加减乘除
好的,下面是一个简单的Python程序,利用异常处理实现了基本的加、减、乘、除运算以及循环控制功能。用户可以输入数字和操作符,如果输入不符合预期或者遇到除数为零的情况,程序会捕获并处理异常。
```python
while True:
try:
# 用户输入
user_input = input("请输入一个算式(如1 + 2 或者 C 关机):")
# 检查是否需要退出
if user_input.upper() == 'C':
print("已关机,程序结束.")
break
# 分割输入,获取操作数和运算符
parts = user_input.split()
if len(parts) != 3 or not parts[0].isdigit() or not parts[2] in ['+', '-', '*', '/']:
raise ValueError("无效的输入,请按照格式输入数值和运算符")
num1, operator, num2 = float(parts[0]), parts[1], float(parts[2])
# 根据运算符计算结果
if operator == '+':
result = num1 + num2
elif operator == '-':
result = num1 - num2
elif operator == '*':
result = num1 * num2
elif operator == '/':
# 异常处理防止除以零
if num2 == 0:
raise ZeroDivisionError("除数不能为零.")
else:
result = num1 / num2
print(f"结果是:{result}")
except ValueError as ve:
print(ve)
except ZeroDivisionError as zde:
print(zde)
```
阅读全文