求正整数N以内的所有勾股数

求正整数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语,将三个数依次求出,然后输出。

猜你喜欢

转载自blog.csdn.net/m0_54624966/article/details/112982394