输入小数Y或分数A/B,选择正确的数据类型(输入数据为小数形式还是分数形式),点击计算按钮,可快速求出对应的小数结果Y、最简分数结果、连分数结果等。
注:小数作为输入或输出均默认5位小数位,大于5位部分自动忽略。
连分数(continuedfraction)是特殊繁分数。如果a0,a1,a2,…an均为整数,则将分别称为无限连分数和有限连分数。一般一个有限连分数表示一个有理数,一个无限连分数表示一个无理数。
考虑实数R。设i是R的整数部分,而f是它的小数部分。则R的连分数表示是[i;…],这里的“…”是1/f的连分数表示。习惯上用分号";"取代第一个逗号。要计算实数R的连分数表示,写下R的整数部分(技术上floor)。从R减去这个整数部分。如果差为0则停止;否则找到这个差的倒数并重复。这个过程将终止,当且仅当R是有理数。
计算原理一:例如:一个小数3.245转换成连分数展开式为[3;4,12,3,1],由连分数的计算原理可知:[3;4,12,3,1]=[3;4,12,4],因为1/(3+1/1)=1/4。详细步骤参见上图的有限连分数计算步骤与原理。
这个算法适合于实数,但如果用浮点数实现的话,可能导致数值灾难。作为替代,任何浮点数是一个精确的有理数(在现代计算机上分母通常是2的幂,在电子计算器上通常是10的幂),所以欧几里得GCD算法的变体可以用来给出精确的结果......
计算原理二:例如:一个分数415/93,对应小数约为4.46237。近似为4,而实际上比4多一点,约为4+1/2。但是在分母中的2是不准确的,更准确的分母应是比2多一点,约为2+1/6,所以415/93近似为4+1/(2+1/6),但是在分母中的6也是不准确的,更准确分母应是比6多一点,实际约为6+1/7。所以415/93实际上是4+1/(2+1/(6+1/7))。这样才准确。去掉表达式4+1/(2+1/(6+1/7))中的冗余部分可得到简略连分数式[4;2,6,7]。
相关计算器: