求正整数N以内的所有勾股数。
所谓勾股数,是指能够构成直角三角形三条边的三个正整数(a,b,c)。
#include"stdio.h"
void main()
{
int n;
int i,j,k;
int count=0;
while(scanf("%d",&n))
{
for(i=1;i<=n;++i)
for(j=i+1;j<=n;++j)
for(k=j+1;k<=n;++k)
if(i*i+j*j==k*k)
{
printf("[%d,%d,%d] ",i,j,k);
count++;
}
printf("total number: %d\n",count);
}
}
首先,先定义一个n求n以内所有的勾股数,count的意思为勾股数为多少个,然后while语,将三个数依次求出,然后输出。