编写一个函数,以三角形的三个边长为参数,判断该三角形是否为直角三角形,如果是 直角三角形返回值为1,否则返回值为0.
时间: 2024-10-13 11:08:10 浏览: 33
编写一个Python函数来判断三角形是否为直角三角形,可以使用勾股定理。如果三角形的三边满足a² + b² = c²的关系,其中c是最长的边(通常称为斜边),那么这个三角形就是直角三角形。下面是函数的实现:
```python
import math
def is_right_triangle(a, b, c):
# 检查c是否为最长边
if c <= a or c <= b:
a, b, c = b, c, a # 如果不是,交换最大的边到c位置
# 使用勾股定理判断
if math.isclose(a**2 + b**2, c**2, rel_tol=1e-9): # 设置一个足够小的容差处理浮点数精度问题
return 1 # 直角三角形
else:
return 0 # 非直角三角形
# 示例
print(is_right_triangle(3, 4, 5)) # 输出:1
```
在这个函数中,我们首先确保c是最长边,然后检查a² + b²是否接近等于c²。如果相等,则返回1;如果不等,返回0。
相关问题
编写一个函数fun,以三角形的三个边长为参数,判断该三角形是否为直角三角形,如果是直角三角形返回值为1,否则返回值为0
好的,这个问题是关于数学的,我可以回答。以下是函数fun的代码:
```
int fun(int a, int b, int c) {
int max = a;
if (b > max) max = b;
if (c > max) max = c;
if (max == a) {
return b * b + c * c == a * a;
} else if (max == b) {
return a * a + c * c == b * b;
} else {
return a * a + b * b == c * c;
}
}
```
这个函数会判断三角形的最长边,如果最长边平方等于其他两边平方之和,则为直角三角形,返回1,否则返回0。
请编写一个函数fun,以三角形的三个边长为参数,判断该三角形是否为直角三角形,如果是直角三角形返回值为1,否返回值为0
在Python中,你可以编写一个名为`is_right_triangle`的函数,利用勾股定理来检查输入的三个边长是否满足直角三角形的条件。下面是函数的实现:
```python
import math
def is_right_triangle(a, b, c):
# 根据勾股定理,a² + b² = c² 或 a² + c² = b² 或 b² + c² = a²
if a**2 + b**2 == c**2 or a**2 + c**2 == b**2 or b**2 + c**2 == a**2:
return 1 # 直角三角形
else:
return 0 # 非直角三角形
# 示例用法
print(is_right_triangle(3, 4, 5)) # 输出:1 (因为 3² + 4² = 5²)
print(is_right_triangle(1, 2, 3)) # 输出:0 (不是直角三角形)
```
在这个函数中,我们首先计算了所有可能的两条边长平方和,然后比较它们是否等于第三条边长的平方。如果满足勾股定理,说明这是一个直角三角形,返回1;否则返回0。
阅读全文