关于勾股定理的死算
找出所有满足勾股定理并且边长不大于500的直角三角形#include<stdio.h>
#include<math.h>
main()
{
int a,b,c;
for(a=1;a<=500;a++)
for(b=1;b<=500;b++)
for(c=1;c<=500;c++)
{
if(a*a+b*b==c*c)
printf("%5d%5d%5d\n",a,b,c);
}
return 0;
}
我编的为什么找不全,我本以为会找重复呀
/*找出所有满足勾股定理并且边长不大于500的直角三角形 为避免重复,令边a为斜边,边b为较长直角边,边c为较短直角边(b、c也可相等) */ #include<stdio.h> #include<math.h> main() { int a,b,c; for(a=1;a<=500;a++) for(b=1;b<=500;b++) for(c=1;c<=500;c++) { if((a*a==b*b+c*c)&&(c<=b)) /*即令边a为斜边,边b为较长直角边,边c为较短直角边(b、c也可相等)*/ printf("%5d%5d%5d\n",a,b,c); } return 0; }