利用python写出代码,判断给出的三边能否构成直角三角形,若构不成三角形,显示输入为非三角形,若能够成直角三角形,显示true
时间: 2024-10-22 09:29:26 浏览: 12
python 判断三角形,给你三个整数a,b,c, 判断能否以它们为三个边长构成三角形。
5星 · 资源好评率100%
在Python中,我们可以使用勾股定理来判断三个数是否能构成直角三角形。勾股定理指出,在一个直角三角形中,直角两边(a和b)的平方和等于斜边(c)的平方。即 a² + b² = c²。如果给定的三边长满足这个条件,则它们可以构成直角三角形。
下面是一个简单的函数实现:
```python
import math
def is_right_triangle(a, b, c):
# 检查三边长度是否满足三角形条件 (任意两边之和大于第三边)
if a + b > c and a + c > b and b + c > a:
# 使用勾股定理检查是否构成直角三角形
if math.isqrt(a**2 + b**2) ** 2 == a**2 + b**2 or math.isqrt(b**2 + c**2) ** 2 == b**2 + c**2 or math.isqrt(c**2 + a**2) ** 2 == c**2 + a**2:
return True
else:
return False
else:
return "输入的边长无法构成三角形"
# 测试示例
print(is_right_triangle(3, 4, 5)) # 输出:True
print(is_right_triangle(1, 2, 3)) # 输出:False
```
在这个代码中,`math.isqrt()` 函数用于计算一个数的整数平方根,如果它不是直角三角形,会返回一个浮点数,所以我们比较两个值的平方是否相等来判断。
阅读全文