博客
关于我
两个数求最大公约数和最小公倍数的方法和理解
阅读量:346 次
发布时间:2019-03-04

本文共 649 字,大约阅读时间需要 2 分钟。

int GreatestCommonDivisor(int a, int b) {    int t;     if (a < b) {        // 交换两个数,使大数放在a的位置上。        t = a;        a = b;        b = t;    }     while (b != 0) {        // 利用辗转相除法,直到b为0为止。        t = a % b;        a = b;        b = t;    }     return a;} int LeastCommonMultiple(int a, int b) {    int t = a * b / GreatestCommonDivisor(a, b);    return t;}
  1. 反复a%b得到余数为0时候,就可以得到最大公约数,为什么呢,因为如下:(利用最大公约数不会超过小的那个数的性质)简单来说,被除数被分成了两坨,一坨可以被除数整除,一坨是余数,现在都可以被整除的玩意必然也可以被最后的最大公约数整除,所以只用找余数与除数的最大公因数,然后同理,余数与除数又分别成了被除数和除数,直至最后整除。
  2. 设两个数为ak bk
    k为最大公约数 则最小公倍数为abk,因为最小公倍数m的意思就是m除以ak,bk分别得到的数不能再进行约下去了,而abk/ak=b,abk/bk=a,a和b根据最大公约数定义即第一步,是不能再相约了的,因此这个abk就是最小公倍数。

转载地址:http://xacr.baihongyu.com/

你可能感兴趣的文章
C语言——经典200道实例【基础例题100道——进阶例题100道】
查看>>
数据结构——线性表&树&图的【数据元素名称-有无结点-内部之间的关系】的区别
查看>>
不知道考研各科课程那个老师的课好?怎么选择安排?在哪找课程课本资料?看这里
查看>>
考研高数一_高数二_高数三考试大纲
查看>>
【无线传感器网络简明教程-学习笔记8】第八章 无线传感器网络试验
查看>>
【考研高数-高等数学-基础】第四章 不定积分
查看>>
【考研英语-基础-简单句】简单句的核心变化_谓语情态
查看>>
【考研英语-基础-简单句】简单句的核心变化_谓语否定与强调_考场攻略
查看>>
基于CC2530的跑马灯实验
查看>>
17级软件技术二班刘鑫磊安卓学期总结
查看>>
配置Log4j详细版
查看>>
数据结构 第五章 二叉树-1
查看>>
[Easy] 58. Length of Last Word
查看>>
[Easy] 100. Same Tree
查看>>
[Easy] 136. Single Number
查看>>
PVE+集客AC+K2T-AP
查看>>
【已解决】PVE shell: “connect: Network is unreachable”
查看>>
Jetson AGX Xavier硬件自启动
查看>>
网页实时显示已经运行了多少天 html+js
查看>>
判断移动端(手机)还是客户端(电脑)打开网页并跳转不同页面(首页)
查看>>