7.3神器能量怎么刷:用C语言做这个题目?

来源:百度文库 编辑:高校问答 时间:2024/05/05 08:34:42
其平方等于某两个正整数平方之和的正整数称为弦数。例如,由于:9+16=25, 因此5为弦数。求[121,930]之间:弦数的数目,最小弦数,最大弦数.

#include<stdio.h>
#include<math.h>
void main()
{
float n,i;
int j,m=0;
for(n=121;n<=930;n++)
{ for(i=1;i<n;i++)
for(j=int(i);j<=int(sqrt(n*n-i*i)+1);j++)
while(i*i+j*j==n*n)
{printf("%f %f %d\n",n,i,j);m++;break;}

}
printf("%d",m);
}

#include <stdio.h>

void main()
{

int i,j,k;

int flag=1;
int min,max,count=0;
for(k=121;k<=930;k++)
{
for(i=1;i<k;i++)
{

for(j=1;j<k;j++)
{
if(i+j<=k)
continue;
if(i*i+j*j==k*k)
{
count++;
if(flag==1)
{
min=k;
flag=2;
}
max=k;
}
}
}

}
printf("在[121,930]之间共有弦数:%5d个\n",count);
printf("最小的弦数是:%5d\n",min);
printf("最大的弦数是:%5d\n",max);

}