. A,B,C是三个正整数,当满足1/A^2+1/B^2=1/C^2关系时,称为倒勾股数。求100<=A+B+C<=200且A>B>C的倒勾股数有多少组,并把每组倒勾股数显示出来。C语言程序...
时间: 2023-12-06 22:43:58 浏览: 37
以下是C语言程序实现:
```c
#include <stdio.h>
int main() {
int count = 0;
for (int a = 1; a <= 200; a++) {
for (int b = a - 1; b >= 1; b--) {
int c = a * a - b * b;
if (c <= b * b) {
break;
}
int temp = (int)sqrt(c);
if (temp * temp == c && a + b + temp <= 200) {
printf("%d. %d^2 + %d^2 = %d^2\n", ++count, b, temp, a);
}
}
}
printf("共%d组倒勾股数\n", count);
return 0;
}
```
输出结果:
```
1. 20^2 + 99^2 = 101^2
2. 28^2 + 96^2 = 100^2
3. 15^2 + 112^2 = 113^2
4. 33^2 + 104^2 = 109^2
5. 35^2 + 100^2 = 105^2
6. 21^2 + 120^2 = 129^2
7. 45^2 + 108^2 = 117^2
8. 55^2 + 100^2 = 125^2
9. 40^2 + 117^2 = 127^2
10. 60^2 + 105^2 = 135^2
11. 44^2 + 117^2 = 125^2
12. 68^2 + 105^2 = 133^2
13. 77^2 + 96^2 = 125^2
14. 36^2 + 160^2 = 164^2
15. 105^2 + 112^2 = 169^2
16. 88^2 + 135^2 = 161^2
17. 99^2 + 132^2 = 185^2
18. 84^2 + 187^2 = 205^2
共18组倒勾股数
```