PS:最好不要用函數pow();我已開始就錯在這函數上!
[plain] #include <stdio.h>
int main()
{
int x;
int y;
int z;
int flag;
int num;
while(scanf("%d", &num)!=EOF && (num>0 && num<=10000))
{
flag=0;
for(x=1; x*x<num; x++)
{
for(y=1; y*y<num; y++)
{
for(z=1; z*z<num; z++)
{
if(x*x+ y*y +z*z==num && (x<=y && y<=z))
{
printf("%d %d %d\n", x, y, z);
flag=1;
break;
}
}
if(flag)
{
break;
}
}
if(flag)
{
break;
}
}
}
return 0;
}
#include <stdio.h>
int main()
{
int x;
int y;
int z;
int flag;
int num;
while(scanf("%d", &num)!=EOF && (num>0 && num<=10000))
{
flag=0;
for(x=1; x*x<num; x++)
{
for(y=1; y*y<num; y++)
{
for(z=1; z*z<num; z++)
{
if(x*x+ y*y +z*z==num && (x<=y && y<=z))
{
printf("%d %d %d\n", x, y, z);
flag=1;
break;
}
}
if(flag)
{
break;
}
}
if(flag)
{
break;
}
}
}
return 0;
}