勾股数的生成算法

admin 的头像

根据一个应用题改编得到

一根竹子高1丈,折断后竹子顶端落在离竹子底端3尺处.折断处离地面的高度是多少?
(这是我国古代数学著作《九章算术》中的一个问题。其中的丈 、尺是长度单位,1丈=10尺。)

x*x+3*3=(10-x)*(10-x)
x=4.55

a^2+b^2=c^2

因为:(a+c)^2=(a+c)^2

a^2+2ac+c^2=(a+c)^2
a^2+2ac+a^2+b^2=(a+c)^2
a^2+2a((a+c)-a)+a^2+b^2=(a+c)^2
2a(a+c)+b^2=(a+c)^2

a=((a+c)^2-b^2)/(2(a+c))

如果a+c已知,且2(a+c)的约数为5或2,则显然满足条件的a,b,c放大一定倍数就可以构成一个勾股数。

5
Your rating: None 平均分: 5 (1 vote)