Python 编写程序,求出100以内的勾股数
时间: 2024-01-20 14:09:54 浏览: 41
python 实现求100之内的素数
5星 · 资源好评率100%
好的,以下是 Python 代码实现:
```python
def gcd(a, b):
"""
辗转相除法求最大公约数
"""
while b != 0:
a, b = b, a % b
return a
def pythagorean_triples():
"""
求出100以内的勾股数
"""
for a in range(1, 100):
for b in range(a, 100):
c = (a ** 2 + b ** 2) ** 0.5
if c.is_integer() and gcd(a, b) == 1:
print(a, b, int(c))
pythagorean_triples()
```
解释一下代码:首先定义了一个函数 `gcd()`,用于求两个数的最大公约数,这里使用辗转相除法。然后定义一个函数 `pythagorean_triples()`,在 `pythagorean_triples()` 中使用两重循环遍历1到100的每个数字,计算出勾股数,判断勾股数是否为整数且a、b是否互质,如果满足条件就输出。
阅读全文