Python输入三角形的三边长,判断是否能构成三角形。如果能构成三角形,打印输出是正三角形、等腰直角三角形、等腰三角形、直角三角形,还是不规则三角形。最后计算周长和面积并输出。
时间: 2024-12-30 13:36:31 浏览: 14
在Python中,可以编写一个函数来实现这个功能。首先,我们需要检查输入的三边能否满足构成三角形的条件,即任意两边之和大于第三边。然后,我们可以根据三边的长度特征来确定三角形的类型。以下是步骤:
```python
import math
def check_triangle(a, b, c):
# 检查三边能否构成三角形
if a + b > c and a + c > b and b + c > a:
# 计算周长
perimeter = a + b + c
print("能构成三角形")
# 判断三角形类型
if a == b == c: # 正三角形
type_ = "正三角形"
elif a**2 + b**2 == c**2 or a**2 + c**2 == b**2 or b**2 + c**2 == a**2: # 等腰直角三角形
type_ = "等腰直角三角形"
elif a != b and b != c and a != c: # 等腰三角形
type_ = "等腰三角形"
else: # 直角三角形或不规则三角形
if math.isqrt(a**2 + b**2) ** 2 == a**2 + b**2:
type_ = "直角三角形"
else:
type_ = "不规则三角形"
print(f"三角形类型:{type_}")
# 计算面积(海伦公式)
s = perimeter / 2
area = math.sqrt(s * (s - a) * (s - b) * (s - c))
print(f"周长:{perimeter}, 面积:{area}")
else:
print("不能构成三角形")
# 用户输入三角形三边长
a = float(input("请输入第一条边长:"))
b = float(input("请输入第二条边长:"))
c = float(input("请输入第三条边长:"))
check_triangle(a, b, c)
```
阅读全文