求最大公约数_左向辗转除余法求最大公约数

要求两个自然数的最大公约数,小学三四年级就学到了。方法就是短除法,用最小的公共质因子去除两个自然数,如果两个商还有公共质因子,则继续用它们的最小质因子去除,直至两个商不再有公共质因子,最后把所有的除数即质因子相乘,那么乘积就是这两个自然数的最大公约数。比如求64和80这两个数的最大公约数,是如图这样求的。

c7ab91d0e68d54011bee7b96122e98ab.png

把短除式左边所有的商乘起来,它们的积就是两个数的最大公约数。那么本题64和80的最大公约数就是2×2×2×2=16 。

短除法简单直观易学,是求最大公约数的好方法。但是遇到下面的这两个数,用短除法就困难了。

求5886467和3662407的最大公约数。

由于短除法需要试商,一般从最小的质数2开始试,然后3、5、7、11,一路向上试,但对于象本题这样的数字,这个商就很难试了,因为其最小公共质因子太大了。对于这样的情况,可以采用辗转除余法,其做法就是用小数去除大数,若余数为0,则小数就是最大公约数;若不为0,则把原小数转为大数,余数作为小数,继续小数除大数,如此辗转相除直至余数为0。余数为0时的那个除数就是最大公约数。如果此时除数为1,则两数没有公共质因子,也就是没有最大公约数,若认为其最大公约数为1也未尝不可。本题的做法如下:

3b78083f93209c84308442b63dbb6d38.png

辗转除余法的通用性是很好的,可以替代短除法,比如前面那道求64与80的最大公约数的题目,用辗转除余法的做法如图:

cfd251aa554ea7d226fcbea90aa0dcf5.png

一下子就把最大公约数16求出来了。

辗转除余法能直接把最大公约数求出来,但对于比较特殊象求5886467和3662407这样的最大公约数,步骤太多太烦琐。我经过研究,把辗转除余法作了创新,我称为左向辗转除余法。方法如下:

36b005b46426c5c611f5805596199b6b.png

左向辗转除余法直接把原除法当作被除法,余数当除数,利用原式直接代入计算,减少了烦琐的抄数字的过程。如果大家觉得好,就请点个赞。谢谢大家。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值