我们常规的乘法算法: 12* 13______________ 36 + 12______________ 156这种算法显然不适合心算(速算),因为你算了的中间结果要先放那儿,而我们的大脑的寄存器比较少,要记忆多的得需要放到外存(硬盘),速度肯定比较慢.但我们的眼睛,手(输入输出)虽然也慢,但相对于我们的计算速度来说是同等数量级别.而计算机因为CPU计算太快,而输入输出也就太过于瓶颈而在过程中基本上惨遭淘汰. 别人发明的乘法速算算法: 13 * 12______________________ 2*3=6 1*2+1*3=5 1*1=1 基本上可以直接写出答案 156长期练习可以不受进位限制不用个位开始,而从高位开始这种算法显然很少中间过程,需要什么,直接根据输入计算得到输出,再下一个。
其实也在边计算边输出。
给人感觉直接就得出答案很神奇的。
除法可一直没有得到好的速算算法(那种比如除以25什么的当然太简单不能算)。
高中的时候一直思考,有天终于得到部分(也算可以了)的除法算法。
我们先看传统的除法计算过程:1/7 10=1*7+3 0.1 30=4*7+2 0.14 20=2*7+6 0.142 60=8*7+4 0.1428 40=5*7+5 0.14285 50=7*7+1 0.142857 1循环 我们可以很快写出结果 0.142857142857.....到了这一步,如果我们不考虑循环,而是继续计算,但我们又知道结果,是不是我们现在的计算速度飞快?直接写出结果?是不是就得到我们需要的速算了。
现在问题是必须出现循环的时候,那我们就考虑循环到底是怎么的,循环也就是余数和前面的被除数相同,也就是一倍,那么不同的情况呢?比如2倍3倍N倍?2分之3分之N分之1? 答案显然就出来了比如100=14*7+2也就是1/7=0.14。
现在我们要计算2/7了,我们不用再去计算,而是要利用我们已经有了的部分计算结果,10/7/5=2/7那么2/7=1.4。
/5 =0.28。
我们来计算1/7=0.14... 14/5=2 0.142 42/5=8 0.1428 28/5=5 0.14285 28-5*5=3 35/5=7 0.1428577/5=10.1428571....是不是飞快的计算出来了?1/199=0.00501/199=0.00502(5/2)1/199=0.005025(10/2)1/199=0.0050251(2/2)1/199=0.00502512(5/2)1/199=0.0050251256....。