[Fw]除法速算

 

转自:http://hi.baidu.com/yuange1975/blog/item/864477f2c5570516b07ec530.html

 

除法也就是:商=被除数/除数

 

那我们就考虑循环到底是怎么的,循环也就是余数和前面的被除数相同,也就是一倍,那么不同的情况呢?比如2倍3倍N倍?2分之1、3分之1、N分之1? 答案显然就出来了

 

我的评论:

看明白了...还有问题没来得及思考,跟博主探讨一下:1、因为要余数是除数的倍数,所以除数不能是两位数?2、如果对于6这种不能被10整除的,你的这 种方法是否有效?比如说6/7怎么算?

 

      高中的成果.比如1/199=0.00502512562814070351....一秒直接写出4、5位结果。

 

我们常规的乘法算法:

           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分之1、3分之1、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.142857

7/5=1

0.1428571....

是不是飞快的计算出来了?

 

1/199=0.0050

1/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....

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值