勾股数是指能够构成直角三角形3条边的3个正整数a、b、c,由勾股定理我们知道a2+b2=c2。 你的任务是,给定正整数n(1≤n≤1000),在a,b,c都不大于n的情况下,编程算出共有多少组不同的勾股数。 例如:n=5时,只有一组勾股数(3, 4, 5),则输出1。 输入 一个正整数n(1≤n≤1000)。 输出 一个正整数,在a,b,c都不大于n的情况下总共有多少组不同的勾股数。
时间: 2024-02-26 22:58:25 浏览: 336
实例求直角三角形的斜边长-JavaScript基础
好的,这是一个数学问题,可以通过枚举的方式求解。以下是 Python 代码实现:
```python
n = int(input())
count = 0 # 统计勾股数的个数
for a in range(1, n+1):
for b in range(a, n+1):
c = (a**2 + b**2) ** 0.5 # 计算 c
if c > n:
break # 如果 c 大于 n,直接退出循环
if c == int(c): # 如果 c 是整数,说明 (a,b,c) 是勾股数
count += 1
print(count)
```
我们先输入一个正整数n,然后通过两层循环枚举a和b的值,计算出c的值,如果c大于n,就退出内层循环,否则判断c是否为整数,如果是整数,就说明(a,b,c)是勾股数,把勾股数的个数加1。最后输出勾股数的个数即可。
阅读全文