首先,先求最大公约数,利用的方法是辗转相除法

辗转相除法的基本原理

如果用C语言来实现,实现代码如下:

循环语句实现

long long int maxDivisor(long long int a,long long int b)  //求最大公约数
{long long int i,c;if(a<b)   //保证最大的数是a,因为是大数除小数{c = a;a = b;b = c;}while(a%b != 0){c = a%b;a = b;b = c;}return b;
}

递归实现

int gcd(int a, int b)
{if(b==0)return a;return gcd(b, a%b);
}

然后来求两个数的最小公倍数

方法1:(优点:速度快,首选这个)

利用先求出最大公约数,两个数的a和b,即

a*b/最大公约数 = 最小公倍数

b*d/maxDivisor(b,d); 

方法2:

利用最小公倍数,肯定比最大的数大,比a*b小,那就用循环,从大数到a*b,判断是否可以被a,b整除,如果整除,说明就是最小公倍数

但是缺点就是,万一a和b这两个数太大,循环就很多次,这样子就容易超出时间

代码实现:

long long int minMultiple(long long int a,long long int b)  //求最小公倍数
{long long int i,c;if(a<b)   //确保a最大 {c = a;a = b;b = c;}for(i = a;i <= a*b;i++) {if(i%a==0 && i%b==0)break;}return i;
}

最小公倍数和最大公约数的求法——最快的:辗转相除法相关推荐

  1. Vijos P1131 最小公倍数和最大公约数问题【暴力】

    最小公倍数和最大公约数问题 描述 输入二个正整数x0,y0(2≤x0≤100000,2≤y0≤1000000),求出满足下列条件的P.Q的个数. 条件:1.P.Q是正整数 2.要求P.Q以xO为最大公 ...

  2. C语言实验——最小公倍数和最大公约数_JAVA

    Description 从键盘输入两个正整数,求这两个正整数的最小公倍数和最大公约数,并输出. Input 输入包括一行. 两个以空格分开的正整数. Output 两个整数的最小公倍数和最大公约数. ...

  3. 常见算法:C语言求最小公倍数和最大公约数三种算法

    最小公倍数:数论中的一种概念,两个整数公有的倍数成为他们的公倍数,当中一个最小的公倍数是他们的最小公倍数,相同地,若干个整数公有的倍数中最小的正整数称为它们的最小公倍数,维基百科:定义点击打开链接 求 ...

  4. c 求最小公倍数_公务员备考-最小公倍数和最小公约数问题

    1.关键提示: 最小公倍数与最大公约数的题一般不难,但一定要细致审题,千万不要粗心.另外这类题往往和日期(星期几)问题联系在一起,要学会求余. 2.核心定义: (1)最大公约数:如果一个自然数a能被自 ...

  5. 求最小公倍数c语言最简公式,C语言求最小公倍数和最大公约数三种算法(经典)...

    把以前写的一些经验总结汇个总,方便给未来的学弟学妹们做个参考! --------------------------永远爱你们的:Sakura 最小公倍数:数论中的一种概念,两个整数公有的倍数成为他们 ...

  6. c语言求最小公倍数和最大公约数三种算法

    C语言求最小公倍数和最大公约数三种算法(经典) 求最小公倍数算法: 最小公倍数=两整数的乘积÷最大公约数 求最大公约数算法: (1)辗转相除法 有两整数a和b: ① a%b得余数c ② 若c=0,则b ...

  7. 求最小公倍数的方法php,JS怎么求得最小公倍数和最大公约数

    这次给大家带来JS怎么求得最小公倍数和最大公约数,JS求得最小公倍数和最大公约数的注意事项有哪些,下面就是实战案例,一起来看一下. 方法来自求多个数最小公倍数的一种变换算法(详见附录说明) 最小公倍数 ...

  8. 辗转取余数php算最小公约数,JS取得最小公倍数与最大公约数

    这次给大家带来JS取得最小公倍数与最大公约数,JS取得最小公倍数与最大公约数的注意事项有哪些,下面就是实战案例,一起来看一下. 方法来自求多个数最小公倍数的一种变换算法(详见附录说明) 最小公倍数的算 ...

  9. C语言求最小公倍数和最大公约数三种算法(经典)

    C语言求最小公倍数和最大公约数三种算法(经典) 最小公倍数:数论中的一种概念,两个整数公有的倍数成为他们的公倍数,其中一个最小的公倍数是他们的最小公倍数,同样地,若干个整数公有的倍数中最小的正整数称为 ...

最新文章

  1. Leetcode-翻转图像(832)
  2. fixed在微信下的BUG
  3. How to make a difference
  4. Microsoft Visual Studio Code
  5. 知名网游Server端架构分析
  6. 距离矢量路由算法_距离矢量路由协议是如何巧妙的利用一种消息就完成失效路由通告、以及失效路由备份路径查询及查询响应。...
  7. NYOJ题目289/456/49-01背包问题汇总
  8. RabbitMQ 集群原理和完善
  9. 一个初级python web后端开发工程师的面试总结
  10. java jdom 创建xml_JDOM 创建 XML
  11. 多元函数微分学(微积分)
  12. 两万常用汉字的拼音+首字母缩写+unicode编码对照表
  13. java source 1.5不支持diamond运算符
  14. (c++)编写函数fac(n),用递归法求出n的阶乘.在程序中使用此函数,将输入的整数n的阶乘求出并输出到控制台.
  15. 读《人性的优点》有感
  16. STM32F407VET6 / BLACK_F407VE开发板间隔0.5秒不断重启
  17. 能远程控制你电脑的苹果充电线正在生产和售卖,走一个?
  18. ElasticSearch (ES)
  19. 组件容器服务器的关系,什么是docker 容器编排
  20. 南京邮电大学网络攻防平台writeup ————密码学

热门文章

  1. 项目管理-进度网络图
  2. LTE 5G UDN 小站的春天?
  3. VS2010 文件存取之CStdioFile
  4. Python:向IRIS发送邮件申请事件或者连续数据
  5. STM8系列5大主流成员(S,L,T,AF,AL)
  6. arduino语言c,Arduino编程基础(二)——C\C++语言基础(上)
  7. 《计算广告》_刘鹏_[一]在线广告市场与背景_(2)计算广告基础
  8. Java使用elasticjob实现定时任务(v2.1.5)
  9. Mybatis-plus尚硅谷跟学课堂笔记
  10. 定义Serializer