乘法的计算-俄罗斯农夫法

                                         乘法的计算-俄罗斯农夫法

假设我想计算35乘以47的乘积是多少,根据俄罗斯农夫法的算法规则有:

  1. 选取两者中较小数并减去一半,舍去余数得到:
35
17
8
4
2
1

     2.把较大的数每次乘以2再生成一列数。

35 47
17 94
8 188
4 376
2 752
1 1504

   3.划掉左侧第一列为偶数的所有行

35

47

17

94

8

188

4

376

2

752

1

1504

 

   4.把右列中剩余的数相加即可得到两数相乘的结果了

                                                                         47+94+1504=1645=35*47

这种算法在计算两数相乘的结果时,只用到了乘以2、除以2和求和运算。对于计算机计算而言,乘以2,除以2能够方便的使用左移和右移实现。

 

参考文献《极简数学》 克里斯.韦林

发布了49 篇原创文章 · 获赞 138 · 访问量 30万+

猜你喜欢

转载自blog.csdn.net/lz0499/article/details/101096928
今日推荐