无限循环小数化分数

Posted vbel

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了无限循环小数化分数相关的知识,希望对你有一定的参考价值。

结论

先举个例子:设小数x=0.316459665766576657...下划线部分为小数后不循环部分,记a=316459,位数m=6,加深部分为小数后循环部分,记b=6657,位数n=4.则分数为(a*10n+b-a)/10m(10n-1),最后约分即可.

原理

把先小数用分数表示.x=a/10m+b/10m+n+b/10m+2n+b/10m+3n.....化简一下x=1/10m(a+b(1/10n+1/102n+1/103n+....)),后面的等比数列用求和公式代替,x=1/10m(a+b/(10n-1)),最后通分一下就可以得到x=(a(10n-1)+b)/10m(10n-1),也就是x=(a*10n+b-a)/10m(10n-1).

以上是关于无限循环小数化分数的主要内容,如果未能解决你的问题,请参考以下文章

小数怎么化成分数

小数怎么转化分数?

python中如何表示一个无限循环小数?(不用分数的形式)

有理数(Rational Number)

从 nib 实例化 UIView 导致无限循环问题

浮点数 复数