如何判断循环小数的循环节c语言_【国际数学竞赛】循环小数变分数有几种方法?...

如何判断循环小数的循环节c语言_【国际数学竞赛】循环小数变分数有几种方法?..._第1张图片

在IGCSE中有这样一个知识点,如何把循环小数转化为分数,比如:Convert

to a fraction。国内学生可能知道的更早,有些小学就知道了,看到上题脑海中会出现转化的公式,好像是
。不过具体怎么转化的可能忘记了,下面我们就来说道说道。

【方法一】

方法一比较快,想法就是把循环部分去掉,变成一个有限数

所以,

那么把上面两个相减就得到:

因此,

有了上述的公式我们一下子就能知道

。进一步,
,好像也是理所当然的了。

不过这里大家要注意一下,要看清楚上述公式是从小数点后第一位就循环了,如果不是这样可不要乱套用公式,比如

肯定是不对的,那么是多少呢?

其实思想是一样的,就是要把循环部分消去变成一个有限数,因为还是两位循环,那么我们同时在两边

,

所以上述两式相减,得到

最后总结一下就是,循环几位,我们就乘以10的几次方,相减消去循环部分,最后除一下得到分数。

【方法二】

方法二的思想就比较直接了,我们直接算出这个分数是多少

这里先需要铺垫一个知识点:等比数列

的前
项和为

,

其中

是公比

进一步,如果

,无穷等比数列的求和公式为:

注:关于等比数列公式推导详见《【"数"你好看】等比数列(Geometric Sequences)》

言归正传,那么我们来计算一下

第一步很简单,我们可以把这个循环小数写成

于是我们就得到了两个等比数列

运用这种方法我们可以把所有的循环小数直接计算变成分数,无非就是多运用几次无穷等比数列求和公式。

下面我们来看一道AMC12的题(这两天AIME分数线都出来了,不知道大家感觉如何)

如何判断循环小数的循环节c语言_【国际数学竞赛】循环小数变分数有几种方法?..._第2张图片
题意分析,这是2019年AMC12A的一道题,把循环小数与进制结合在一起考察,在
进制下
,在十进制下是
,问这个
是多少?

这里我们就用上述两种方法来求解:

【方法一】

进制数转化为10进制数

进制下的小数怎么样转化为10进制呢?(类比
)

所以,

求解一元二次方程得,

这种方法和我们利用无穷等比数列把循环小数转化为分数思想是一样的。那么我们如何通过第一种方法来求解呢?即如何把循环部分消去。

【方法二】消去循环部分

前面我们是乘以10的n次方,那么这里呢?

这里我们就需要乘以

的n次方了。

注意,这里左边是10进制下的数,右边是

进制下的数。

于是,把上述两式相减

因此,

至此,我们用讲过的两种方法把上面的问题解决了。

下面再给一道昨天竞赛群里发的BMT(伯克利数学竞赛)的问题:

5e26f56b02f071000b09a9073f8e09e1.png

这道题我们就直接把解题放在这里了,就是我们前面的一个小结论并结合同余运算:

如何判断循环小数的循环节c语言_【国际数学竞赛】循环小数变分数有几种方法?..._第3张图片

关于循环小数的问题大家还有什么想法吗?欢迎交流~

想了解更多关于国际数学竞赛及课程,可参阅

双木止月Tong:国际数学竞赛及课程​zhuanlan.zhihu.com
如何判断循环小数的循环节c语言_【国际数学竞赛】循环小数变分数有几种方法?..._第4张图片

你可能感兴趣的:(如何判断循环小数的循环节c语言)