湖南省二C语言
发布网友
发布时间:2022-05-24 13:29
我来回答
共4个回答
热心网友
时间:2023-10-15 12:35
{if(a>b&&b>c&&a+b+c<50&&1/(a*a)+1/(b*b)==1/(c*c)) 最后的条件错了,因为当成整数除法了。
所以成立的比较多。
改为
if(a>b&&b>c&&a+b+c<50&&fabs(1.0/(a*a)+1.0/(b*b)-1.0/(c*c))<=1e-6)
算出只有两组
热心网友
时间:2023-10-15 12:36
#include "stdio.h"
#include<math.h>
void main()
{int a,b,c,s=0;
for(a=1;a<=50;a++)
{
for(b=1;b<=50;b++)
{
for(c=1;c<=50;c++)
{if(a>b&&b>c&&a+b+c<50&&fabs(1.0/(a*a)+1.0/(b*b)-1.0/(c*c))<=1e-6) //设置一个很小的数
{
s=s+1;
printf("%d %d %d\n",a,b,c);
}
}
}
}
printf("%d",s);
}
热心网友
时间:2023-10-15 12:36
/* Note:Your choice is C IDE */
#include "stdio.h"
#include "math.h"
void main()
{int i,s;
s=0;
for(i=1;s<500;i++)
{int n;
n=pow(2,i);
s=s+n;
}
printf("%d",s);
}
是否可以解决您的问题?
热心网友
时间:2023-10-15 12:37
#include "stdio.h"
void main()
{int a,b,c,s=0;
for(a=1;a<=50;a++)
{
for(b=1;b<=50;b++)
{
for(c=1;c<=50;c++)
{if(a>b&&b>c&&a+b+c<50&&1.0/(a*a)+1.0/(b*b)==1.0/(c*c)) //这里要变成float型 否则 1/a*a=0;
s=s+1;
}
}
}