勾股數三個要素:
1、三個數均為正整數;
2、分別以三數為邊長,能構成三角形;
3、較小兩數的平方和等於最大數的平方。
對於本題:
5、12、13均為正整數,能構成三角形。5?+12?=13?
因此,5、12、13是勾股數。
可以編程求解勾股數:
#include <stdio.h>
void main()
{
int a,b,c;
for(a=1;a<=100;a++)
for(b=a;b<=100;b++)
for(c=b;c<=100;c++)
if(a+b>c&&a*a+b*b==c*c)
printf("a=%d ?b=%d ?c=%d\n",a,b,c);
}
上述程序求解100以內的勾股數。***有52組勾股數。