1、查找约数法. 先分别找出每个数的所有约数, 再从两个数的约数中找出公有的约数, 其中最大的一个就是 最大公约数. 例如,求 12 和 30 的最大公约数. 12 的约数有:1、2、3、4、6、12; 30 的约数有:1、2、3、5、6、10、15、30. 12 和 30 的公约数有:1、2、3、6,其中 6 就是 12 和 30 的最大公约数. 2 更相减损术 《九章算术》是中国古代的数学专著,其中的“更相减损术”可以用来求 两个数的最大公约数,即“可半者半之,不可半者,副置分母、子之数, 以少减多,更相减损,求其等也。以等数约之。” 翻译成现代语言如下: 第一步:任意给定两个正整数;判断它们是否都是偶数。若是,则用 2 约简;若不是则执行第二步。 第二步:以较大的数减较小的数,接着把所得的差与较小的数比较, 并以大数减小数。继续这个操作,直到所得的减数和差相等为止。 则第一步中约掉的若干个

2 与第二步中等数的乘积就是所求的最大公 约数。 其中所说的“等数”,就是最大公约数。求“等数”的办法是“更相 减损”法。

3、辗转相除法. 当两个数都较大时,采用辗转相除法比较方便.其方法是: 以小数除大数,如果能整除,那么小数就是所求的最大公约数.否则就用余数来除刚才 的除数;再用这新除法的余数去除刚才的余数.依此类推,直到一个除法能够整除,这时作 为除数的数就是所求的最大公约数. 例如:求 4453 和 5767 的最大公约数时,可作如下除法. 5767÷4453=1 余 1314 4453÷1314=3 余 511 1314÷511=2 余 292 511÷292=1 余 219 292÷219=1 余 73 219÷73=3 于是得知,5767 和 4453 的最大公约数是 73. 辗转相除法适用比较广,比短除法要好得多,它能保证求出任意两个数的最大公约数.

4、求差判定法. 如果两个数相差不大, 可以用大数减去小数, 所得的差与小数的最大公约数就是原来两 个数的最大公约数.例如:求 78 和 60 的最大公约数.78-60=18,18 和 60 的最大公约 数是 6,所以 78 和 60 的最大公约数是 6. 如果两个数相差较大,可以用大数减去小数的若干倍,一直减到差比小数小为止,差和小数 的最大公约数就是原来两数的最大公约数.例如:求 92 和 16 的最大公约数.92-16=76, 76-16=60,60-16=44,44-16=28,28-16=12,12 和 16 的最大公约数是 4,所 以 92 和 16 的最大公约数就是 4.

5、分解因式法. 先分别把两个数分解质因数, 再找出它们全部公有的质因数, 然后把这些公有质因数相 乘,得到的积就是这两个数的最大公约数. 例如:求 125 和 300 的最大公约数.因为 125=5×5×5,300=2×2×3×5×5,所以 125 和 300 的最大公约数是 5×5=25.

6、短除法. 为了简便, 将两个数的分解过程用同一个短除法来表示, 那么最大公约数就是所有除数 的乘积. 例如:求 180 和 324 的最大公约数. 因为: 5 和 9 互质,所以 180 和 324 的最大公约数是 4×9=36. 7、除法法. 当两个数中较小的数是质数时,可采用除法求解.即用较大的数除以较小的数,如果能 够整除,则较小的数是这两个数的最大公约数. 例如:求 19 和 152,13 和 273 的最大公约数.因为 152÷19=8,273÷13=21.(19 和 13 都是质数.)所以 19 和 152 的最大公约数是 19,13 和 273 的最大公约数是 13. 8、缩倍法. 如果两个数没有之间没有倍数关系,可以把较小的数依次除以 2、3、4……直到求得的 商是较大数的约数为止,这时的商就是两个数的最大公约数.例如:求 30 和 24 的最大公 约数.24÷4=6,6 是 30 的约数,所以 30 和 24 的最大公约数是 6.

最大公约数简便算法_最大公约数算法相关推荐

  1. 【Matlab】智能优化算法_蜻蜓优化算法DA

    [Matlab]智能优化算法_蜻蜓优化算法DA 1.背景介绍 2.灵感 3.公式推导 3.1 勘探和开发操作 4.算法流程图 5.文件结构 6.伪代码 7.详细代码及注释 7.1 DA.m 7.2 d ...

  2. 【Matlab】智能优化算法_蚁狮优化算法ALO

    [Matlab]智能优化算法_蚁狮优化算法ALO 1.背景介绍 2.基本思想 3.公式推导 3.1 ALO算法的运算符 3.2 蚂蚁的随机游动 3.3 困在蚂蚁坑里 3.4 修建陷阱 3.5 蚂蚁划向 ...

  3. 【Matlab】智能优化算法_灰狼优化算法GWO

    [Matlab]智能优化算法_灰狼优化算法GWO 1.背景介绍 2.基本思想 2.1 等级制度 2.2 狩猎方式 3.公式推导 3.1 社会等级制度 3.2 包围猎物 3.3 包围猎物 3.4 攻击猎 ...

  4. 多边形之间相交求交点的算法_路径规划算法总结

    本文来自知乎网友@搬砖的旺财,地平线机器人算法工程师.作者根据自己本科和硕士阶段的学习经历,整理归纳了所接触过的规划算法. 1.自主机器人近距离操作运动规划体系 在研究自主运动规划问题之前,首先需建立 ...

  5. 机器学习 线性回归算法_探索机器学习算法简单线性回归

    机器学习 线性回归算法 As we dive into the world of Machine Learning and Data Science, one of the easiest and f ...

  6. python实现洗牌算法_洗牌算法及 random 中 shuffle 方法和 sample 方法浅析

    对于算法书买了一本又一本却没一本读完超过 10%,Leetcode 刷题从来没坚持超过 3 天的我来说,算法能力真的是渣渣.但是,今天决定写一篇跟算法有关的文章.起因是读了吴师兄的文章 <扫雷与 ...

  7. hash算法_一致性hash算法简介

    一致性hash算法有什么用?我们为什么需要一致性hash算法?这两个问题的答案可以看这篇文章 分布式系统路由算法简介. 了解了一致性hash算法出现的背景,我们来看看什么是一致性hash算法.一致性h ...

  8. 一致性hash算法_分布式寻址算法

    一.分布式寻址算法简介 分布式寻址算法是很重要的内容,不了解这些算法,也就不能透彻的了解各种分布式中间件的原理.简单说一下这些高大上的寻址到底是个啥意思,比如在elasticsearch中,采用的是多 ...

  9. java 最少使用(lru)置换算法_缓存置换算法 - LRU算法

    LRU算法 1 原理 对于在内存中并且不被使用的数据块就是LRU,这类数据需要从内存中删除,以腾出空间来存储常用的数据. LRU算法(Least Recently Used,最近最少使用),是内存管理 ...

  10. python 查找算法_七大查找算法(Python)

    查找算法 -- 简介 查找(Searching)就是根据给定的某个值,在查找表中确定一个其关键字等于给定值的数据元素. 查找表(Search Table):由同一类型的数据元素构成的集合 关键字(Ke ...

最新文章

  1. Ubuntu 10.10系统安装手记
  2. 3.Excel数据透视表
  3. .NET Remoting
  4. cg word List2
  5. Optimizing Code with GCC
  6. C ++ 数组 | 多维数组(MultiDimensional Arrays)_2
  7. angular4-http
  8. 【2022最新版】Java零基础入门教程_零基础学Java_Java入门教程
  9. WI-FI密码破解-奶瓶
  10. 阿里医疗NLP实践与思考
  11. vue如何在地址栏拼接url参数
  12. xingtai -飞机大战2。0
  13. 跨平台应用开发进阶(七) :uni-app 自定义 showToast
  14. python pandas excle 把两列合并新的一列
  15. 宽带服务器盒信号灯红色闪烁,光纤灯红色闪烁怎么解决(图文)
  16. c语言镶嵌循环,讲解C++的do while循环和循环语句的嵌套使用方法
  17. RMAN 系列(九) ---- 调整RMAN备份与恢复操作的性能
  18. linux技术咨询,Linux技术咨询委员会已完成对UMN内核漏洞植入事件的调查
  19. windows下 python安装pip 简易教程
  20. 王志东:解决来自腾讯QQ的威胁

热门文章

  1. 手机内存不够用,蒲公英X1让U盘秒变私有云
  2. Tensorflow入门(二)文本自动生成
  3. java 图片加多处水印_Java在Word中添加多行图片水印
  4. [阿毛]Ubuntu 16安装CH340串口驱动
  5. C#实现在图片上添加文字和二维码
  6. 北京招聘 | 京东广告质量部:算法实习生、算法工程师校招
  7. [转载][翻译]偿还技术债 - 通过重构拯救老代码
  8. DC-DC buck降压电路 电压电流双闭环PI控制matlab仿真模型
  9. Mysql 实现行转列功能
  10. Android带动画进度条简单实现