接收3个数字输入 判断能否构成三角形 输入True or False 若成立输出面积
时间: 2024-09-24 15:09:53 浏览: 40
C语言输入三角形边长判断其类型并输出面积实例代码
5星 · 资源好评率100%
要判断三个输入的数字是否能组成一个三角形并计算其面积(如果可能),我们需要考虑两个条件:首先,任意两边之和必须大于第三边,这样才能形成一个三角形;其次,对于直角三角形,我们可以使用海伦公式来求解面积。
以下是一个简单的 Python 函数,它接受三边长作为参数,检查它们是否满足三角形条件,并根据需要计算面积(如果为直角三角形):
```python
import math
def is_valid_triangle(side_a, side_b, side_c):
# 检查三边能否构成三角形
if not (side_a + side_b > side_c and side_a + side_c > side_b and side_b + side_c > side_a):
return False
def calculate_area_if_right_triangle(side_a, side_b):
# 只有当两边的平方和等于第三边的平方时,才是直角三角形
if side_a**2 + side_b**2 == side_c**2:
# 根据半周长公式计算面积(对于直角三角形)
s = (side_a + side_b + side_c) / 2
area = math.sqrt(s * (s - side_a) * (s - side_b) * (s - side_c))
return area
else:
return None
# 接收用户输入
side_a = float(input("请输入第一个边长: "))
side_b = float(input("请输入第二个边长: "))
side_c = float(input("请输入第三个边长: "))
if is_valid_triangle(side_a, side_b, side_c):
triangle_type = "直角三角形" if (side_a**2 + side_b**2 == side_c**2) else "普通三角形"
print(f"{triangle_type}是可以形成的,面积为:")
area = calculate_area_if_right_triangle(side_a, side_b)
if area:
print(area)
else:
print("这三个数不能构成三角形")
```
运行这个程序后,用户将被提示输入三角形的三条边长。如果输入的三边能构成三角形,程序会进一步确定是否为直角三角形,并计算其面积。如果没有构成三角形,则输出相应的消息。
阅读全文