一种将无限循环小数快速转换为分数的方法

来源:互联网 发布:淘宝的高仿九阳豆浆机 编辑:程序博客网 时间:2024/04/28 12:31

问题描述:

将任意无限循环小数转换为分数。例如0.121121121........=121/999

算法综述:

前面有一篇博文抱着娱乐态度证明了0.9999...=1 ,证明过程既不严谨。但由此可想到一种将任意无限循环小数快速转为分数的方法。

首先回顾下0.9999...=1 的证明过程:

证明:

令a=0.99999...(无限循环)

则10a=9.99999...(无限循环)

10a-a=9.99999...(无限循环)-0.99999...(无限循环)=9=9a

所以a=1

换汤不换药:

令a=0.121121121...(无限循环)

则1000a=121.121121121...(无限循环)

1000a-a=121.121121...(无限循环)-0.121121...(无限循环)=121=999a

a=121/999

。。。。。

由此我们可以看出,这是一种多么无聊且无用的方法啊。。。。。。

代码实现:

八股文害死人。。。这样的还实现个P。。。

0 0
原创粉丝点击