推导基于以下定义
1/3=0.333…+m/3
1/3对应的无限循环小数为0.333…
1/9对应的无限循环小数为0.111…
0.333…与m有N位小数
公式
(a+b)^2=a^2+2ab+b^2
——————————
1/9=(1/3)^2
=0.333…*0.333…+2*0.333…*m/3+m^2/9
——————————
0.3*0.3=0.09
0.33*0.33=0.1089
0.333*0.333=0.110889
0.3333*0.3333=0.11108889
……
0.333…*0.333…=0.111…1088…89
这里相乘的两个小数的位数是相同的
前面有N个“3”,则后面有(N-1)个“1”,1个“0”,(N-1)个“8”,1个“9”
——————————
提一下,一个小数乘以一个整数,在不产生进位的情况下,位数是不变的,如0.222*3=0.666,仍是3位小数
2*0.333…*m/3
=0.666…*m/3
=0.222…*m
此时0.222…有N位小数,m也有N位小数
参照以下推导
0.2*0.1=0.02
0.22*0.01=0.0022
0.222*0.001=0.000222
……
前面有N个“2”,则后面有N个“0”和N个“2”
———————————
将0.333…^2与0.222…*m相加
为更简便叙述,此处分为前N与后N
有关后N-1个“8”与“2”的相加
第1个“8”与第1个“2”相加,进1(这个1导致前第N位的“0”变成了“1”),余0
第2个“8”与第2个“2”相加,进1(这个1导致后第1位的“0”变成了“1”),余0
……
往下递推
第(N-1)个“8”与第(N-1)个“2”相加,进1,余0
此时,后第N位的“9”与“2”相加,进1
(使后第(N-1)位的“0”变成了“1”)
余1
故可知
1/9对应的无限循环小数0.111…的小数位数为2N
1/3对应的无限循环小数0.333…的小数位数为N
二者的小数位数存在2倍的关系
—————————————
验算
1/9=0.111…+m^2/9
两边同时乘以9
1=0.999…(2N个“9”)+m^2
m=0.00…01,N-1个“0”与1个“1”
m^2=0.000…01,2N-1个“0”与1个“1”
将m^2对应的“1”加进0.999…(2N个“9”)
从末尾开始反复进1
直到第1个“9”得1,进1,余“0”
得1.000…0(2N个“0”)
末尾的“0”不影响大小,所以1=1.000(2N个“0”)
—————————————
@a/sigma
我也不知道你能不能看懂,因为我后来推了一下乘法的,你可以试试在草稿纸上把0.3*0.3的竖式计算写出来,你往下写,你应该也能感觉到这种规律,如果感觉不到就算了,当我算错了
1/3=0.333…+m/3
1/3对应的无限循环小数为0.333…
1/9对应的无限循环小数为0.111…
0.333…与m有N位小数
公式
(a+b)^2=a^2+2ab+b^2
——————————
1/9=(1/3)^2
=0.333…*0.333…+2*0.333…*m/3+m^2/9
——————————
0.3*0.3=0.09
0.33*0.33=0.1089
0.333*0.333=0.110889
0.3333*0.3333=0.11108889
……
0.333…*0.333…=0.111…1088…89
这里相乘的两个小数的位数是相同的
前面有N个“3”,则后面有(N-1)个“1”,1个“0”,(N-1)个“8”,1个“9”
——————————
提一下,一个小数乘以一个整数,在不产生进位的情况下,位数是不变的,如0.222*3=0.666,仍是3位小数
2*0.333…*m/3
=0.666…*m/3
=0.222…*m
此时0.222…有N位小数,m也有N位小数
参照以下推导
0.2*0.1=0.02
0.22*0.01=0.0022
0.222*0.001=0.000222
……
前面有N个“2”,则后面有N个“0”和N个“2”
———————————
将0.333…^2与0.222…*m相加

有关后N-1个“8”与“2”的相加
第1个“8”与第1个“2”相加,进1(这个1导致前第N位的“0”变成了“1”),余0
第2个“8”与第2个“2”相加,进1(这个1导致后第1位的“0”变成了“1”),余0
……
往下递推
第(N-1)个“8”与第(N-1)个“2”相加,进1,余0
此时,后第N位的“9”与“2”相加,进1
(使后第(N-1)位的“0”变成了“1”)
余1
故可知
1/9对应的无限循环小数0.111…的小数位数为2N
1/3对应的无限循环小数0.333…的小数位数为N
二者的小数位数存在2倍的关系
—————————————
验算
1/9=0.111…+m^2/9
两边同时乘以9
1=0.999…(2N个“9”)+m^2
m=0.00…01,N-1个“0”与1个“1”
m^2=0.000…01,2N-1个“0”与1个“1”
将m^2对应的“1”加进0.999…(2N个“9”)
从末尾开始反复进1
直到第1个“9”得1,进1,余“0”
得1.000…0(2N个“0”)
末尾的“0”不影响大小,所以1=1.000(2N个“0”)
—————————————
@a/sigma
我也不知道你能不能看懂,因为我后来推了一下乘法的,你可以试试在草稿纸上把0.3*0.3的竖式计算写出来,你往下写,你应该也能感觉到这种规律,如果感觉不到就算了,当我算错了