有限的连分数,可以用渐进分数计算 最接近的渐进分数就是他本身了.
1/(3+(1/(3+1/3))) = [0,3..3] 7个3
渐进分数的分子和分母有个递推公式
a = [0,3..3]
初始分子 h = [0,1]
初始分母 k = [1,0]
递推公式:
h[i] = a[i-2]*h[i-1]+h[i-2]
k[i] = a[i-2]*k[i-1]+k[i-2]
h[2] = a[0]*h[1]+h[0] h[2] = 0
k[2] = a[0]*k[1]+k[0] k[2] = 1
h[3] = a[1]*h[2]+h[1] h[3] = 1
k[3] = a[1]*k[2]+k[1] k[4] = 3
.
h[9] = a[7]*h[8]+h[7]
k[9] = a[7]*k[8]+k[7]
上面的步骤可以使用循环
h[9]/k[9] 就是你要的结果了1189/3927