python编程,设计程序能够计算键盘输入三条边的三角形的面积。其中,对输入的数据使用异常进行约束,假如输入的数据类型错误则进行“类型错误”的异常处理。假如输入的三条边不能够满足三角形的组成,则抛出自定义的异常类并进行处理。当输入数据都正确时,使用面向对象的编程计算三角形的面积。
时间: 2024-05-02 07:16:22 浏览: 104
好的,这是一个非常实用的程序,我可以帮你实现。首先,我们可以定义一个 Triangle 类来计算三角形的面积,代码如下:
```python
class Triangle:
def __init__(self, a, b, c):
self.a = a
self.b = b
self.c = c
def get_area(self):
s = (self.a + self.b + self.c) / 2
area = (s * (s - self.a) * (s - self.b) * (s - self.c)) ** 0.5
return area
```
这个类有一个构造函数,接收三个边长作为参数,并且有一个 get_area 方法来计算三角形的面积。
接下来,我们可以写一个函数来接收用户的输入,并且进行异常处理:
```python
def get_input():
try:
a = float(input("请输入第一条边的长度:"))
b = float(input("请输入第二条边的长度:"))
c = float(input("请输入第三条边的长度:"))
if a <= 0 or b <= 0 or c <= 0:
raise ValueError("边长必须大于0!")
if a + b <= c or a + c <= b or b + c <= a:
raise Exception("三条边不能组成三角形!")
triangle = Triangle(a, b, c)
area = triangle.get_area()
print("三角形的面积是:", area)
except ValueError as e:
print("类型错误:", e)
except Exception as e:
print("输入错误:", e)
```
这个函数使用了 try-except 语句来捕捉可能出现的异常,包括类型错误和三条边无法组成三角形的情况。当输入正确时,它会创建一个 Triangle 对象,并且调用 get_area 方法来计算面积。
最后,我们可以在主程序中调用 get_input 函数来运行程序:
```python
if __name__ == '__main__':
get_input()
```
这样,我们就完成了这个程序。你可以运行它来测试一下,看看它是否能够正确地计算三角形的面积并且能够处理各种异常。
阅读全文