编写程序,按用户输入的半径计算圆的面积,若半径为负值则抛出异常(圆的面积公式:S=2Πr^2)
时间: 2023-09-12 18:12:07 浏览: 192
好的,下面是 Python 代码示例:
```python
import math
class NegativeRadiusError(Exception):
pass
def calculate_circle_area(radius):
if radius < 0:
raise NegativeRadiusError("半径不能为负数")
else:
return 2 * math.pi * radius ** 2
try:
radius = float(input("请输入圆的半径:"))
area = calculate_circle_area(radius)
print("圆的面积为:", round(area, 2))
except NegativeRadiusError as e:
print("输入错误:", e)
except ValueError:
print("输入错误:半径必须为数字")
```
和上一个问题类似,我们也是定义了一个 `NegativeRadiusError` 异常类来表示半径为负数的错误。不同的是,在 `calculate_circle_area` 函数中,我们使用的是圆的面积公式 `S=2Πr^2`。
在程序的主体代码中,我们同样使用 `try-except` 语句来捕获异常并进行处理。如果用户输入的半径为负数,则会抛出 `NegativeRadiusError` 异常并打印错误消息;如果用户输入的半径不是数字,则会抛出 `ValueError` 异常并打印错误消息。如果一切正常,则会计算圆的面积并打印结果。
希望这个程序能够帮到你,如果有任何疑问请随时向我提问。
阅读全文