节选自《编程之美》
设一个循环小说X=0.a1a2a3...an(b1b2...bm),括号中的是循环节,例0.333(333)
将X分成两部分,X=(a1a2..an+0.(b1b2..bm))/10n
设Y=0.(b1b2...bm)
则有Y=(b1b2...bm+0.(b1b2...bm))*10m
那么就有Y=b1b2...bm/(10m-1)
综上可知
X=(a1a2...an+Y)/10n
将Y=b1b2...bm/(10m-1)带入上式
则X=((a1a2...an)*(10m-1)+(b1b2...bm))/((10m-1)*10n)
注:10m,10n是10的m次方和10的n次方的意思