连分数

  • 连分数已关闭评论
  • A+
所属分类:成语词典大全

连分数,无理数怎么化成连分数?

例如5的平方根和立方根,sin37°、sin37(弧度)、log8底6这些。尽量详细一点,谢谢。

如果这个数是x^2-kx-1=0的解,那就简单了。x=[k;k,k,k,...]

如果这个数是二次无理数(a+√n)/b的话,给你推荐这篇文章:

我也不是特别了解,希望能帮到您一点。

无理数是无限不循环小数。根据无理数的定义,不能转化成分数的无限小数才是无理数。所以,无理数是不能转化成分数的。凡是能转化成分数的无限小数都不是无理数。

什么是连分数
连分数,如何计算连分数?

连分数(continued fraction)是特殊繁分数。如果a0,a1,a2,…an,…都是整数,则将分别称为无限连分数和有限连分数。可简记为a0 ,a1,a2,…,an,…和a0,a1,a2,…,an。一般一个有限连分数表示一个有理数,一个无限连分数表示一个无理数。如果a0,a1,a2,…,an,…都是实数,可将上述形式连分数分别叫无限连分数和有限连分数 。近代数学的计算需要,还可将连分数中的a0,a1 ,a2,…,an,…取成以x为变元的多项式。在近代计算数学中它常与某些微分方程式差分方程有关,与某些递推关系有关的函数构造的应用相联系。考虑实数r。设i是r的整数部分,而f是它的小数部分。则r的连分数表示是 [i; …],这里的“…”是 1/f的连分数表示。习惯上用分号取代第一个逗号。

要计算实数r的连分数表示,写下r的整数部分(技术上floor)。从r减去这个整数部分。如果差为 0 则停止;否则找到这个差的倒数并重复。这个过程将终止,当且仅当r是有理数。这个算法适合于实数,但如果用浮点数实现的话,可能导致数值灾难。作为替代,任何浮点数是一个精确的有理数(在现代计算机上分母通常是 2 的幂,在电子计算器上通常是 10 的幂),所以欧几里得GCD算法的变体可以用来给出精确的结果......

对于无限连分数,是不可能从最底一级开始逐级计算的。可以从最顶层开始计算,具体办法是第一步,算出一级近似1/a0,然后用(ao+1/a1)来取代上一级近似中的a0,这样一级一级地计算,就可以计算出各级的近似值了。具体可以参考

http://zh.wikipedia.org/wiki/连分数

使用递推关系,设【a0,a1,――,am】表示一个连分数,而pn\qn=【a0,a1,――an],则有

p0=a0,p1=a1*a0+1,pn=an*p(n-1)+p(n-2);q0=1,q1=x1,qn=an*q(n-1)+q(n-2)

从最底一级(单纯的分数)开始逐渐计算即可。