求10w以内的所有整数的勾股组合 有木有快一点的方法
程序代码:#include<stdio.h>
#include<math.h>
int main(void)
{
double a;
double b;
double c;
for (a = 1; a <= 100000; a++)
{
for (b = a; b <= 100000; b++)
{
c = sqrt(a * a + b * b);
if (c <= 100000)
{
if ( c == (int)c)
{
printf("a=%d,b=%d,c=%d\n", (int)a, (int)b, (int)c);
}
}
}
}
return (0);
}
死慢死慢的 我就是都给查了一遍, 有没有快一点的算法?
另外 呃 有没有什么方法能跳过那个判断是不是整数的那部分(就是通过整型来写出来程序)









谢版主

看了下数论才发现自己的数学知识是多么的匮乏