.编写程序,按用户输入的三角形三条边判断是否能构成三角形,若能构成则计算三角形的面积和周长,否则引发异常。
时间: 2024-05-15 16:12:21 浏览: 112
根据输入三角形三条边判断该三角形形状
下面是Python的程序实现:
```python
import math
class Triangle:
def __init__(self, a, b, c):
self.a = a
self.b = b
self.c = c
def is_valid(self):
if self.a + self.b <= self.c or self.a + self.c <= self.b or self.b + self.c <= self.a:
raise ValueError('Invalid triangle')
return True
def perimeter(self):
return self.a + self.b + self.c
def area(self):
p = self.perimeter() / 2
return math.sqrt(p * (p - self.a) * (p - self.b) * (p - self.c))
a = float(input('Enter side a: '))
b = float(input('Enter side b: '))
c = float(input('Enter side c: '))
try:
triangle = Triangle(a, b, c)
if triangle.is_valid():
print('Perimeter:', triangle.perimeter())
print('Area:', triangle.area())
except ValueError as e:
print(e)
```
首先定义了一个Triangle类,包含三条边的属性和判断是否为有效三角形的方法is_valid、计算周长的方法perimeter和计算面积的方法area。
在主程序中,获取用户输入的三条边,通过try-except语句判断是否为有效三角形,如果是则输出周长和面积,否则引发异常并输出错误信息。
阅读全文