一丶 最大公因数求法:

辗转相除法(也称欧几里得算法)原理:

 
二丶最小公倍数求法:两个整数的最小公倍数等于两整数之积除以最大公约数
 

C++ 代码实现

 #include <iostream>

 using namespace std;

 //辗转相除法(欧几里得算法)

 int gcd(int a, int b)
{
int da = max(a,b);
int xiao = min(a,b);
if(da % xiao == )
return xiao;
else
return gcd(xiao, da % xiao); } // 两个整数的最小公倍数等于两整数之积除以最大公约数 int lcm(int a, int b)
{
return a*b / gcd(a, b);
} int main()
{
int x, y;
cout << "输入两个数字(按Ctrl+Z结束输入): ";
while(cin >> x >> y)
cout << "这两个数的最大公因数是:" << gcd(x, y) << endl
<< "这两个数的最小公倍数是:" << lcm(x, y) << endl; }

C++实现--最大公因数和最小公倍数的更多相关文章

  1. 求最大公因数和最小公倍数(C++实现)

    求两个正整数之最大公因子的算法(辗转相除法) 最大公约数是指能同时整除它们的最大正整数 基本原理:两个数的最大公约数等于它们中较小的数和两数之差的最大公约数. 就如有 a = 122, b =  54 ...

  2. 最大公因数与最小公倍数-gcd&lcm

    一.一些性质 \(gcd(a,b)=gcd(b,a)\) \(gcd(-a,b)=gcd(a,b)\) \(gcd(a,a)=|a|, gcd(a,0)=|a|\) \(gcd(a,1)=1\) \( ...

  3. 最大公因数数gcd模板

    首先蒟蒻是在大佬的博客里学习的代码,代码风格多有相似之处,大佬博客https://www.cnblogs.com/lMonster81/p/10433902.html 最大公因数那,顾名思义就是两个数 ...

  4. node操作MongoDB数据库之插入

    在上一篇中我们介绍了MongoDB的安装与配置,接下来的我们来看看在node中怎样操作MongoDB数据库. 在操作数据库之前,首先应该像关系型数据库一样建个数据库把... 启动数据库 利用命令提示符 ...

  5. HDU 4497 GCD and LCM (数学,质数分解)

    题意:给定G,L,分别是三个数最大公因数和最小公倍数,问你能找出多少对. 析:数学题,当时就想错了,就没找出规律,思路是这样的. 首先G和L有公因数,就是G,所以就可以用L除以G,然后只要找从1-(n ...

  6. 一个好的函数(gcd)求最小公约数

    这个函数是我无意中看到的很不错,很给力,我喜欢 是用于求最小公约数的 简单的描述就是,记gcd(a,b)表示非负整数a,b的最大公因数,那么:gcd(a,b)=gcd(b,a%b)或者gcd(a,0) ...

  7. 清北学堂Day2

    算数基本定理: 1.整数及其相关 2.唯一分解定理 对于任意的大于1的正整数N,N一定能够分解成有限个质数的乘积,即 其中P1<P2<...<Pk,a1,a2,...,ak>= ...

  8. 经典算法问题的java实现 (一)

    原文链接: http://liuqing-2010-07.iteye.com/blog/1396859   1.如何计算闰年(Leap Year)?   四年一闰:百年不闰:四百年再闰.   具体参照 ...

  9. java一些必会算法

    经典算法的Java实现 (1)河内塔问题: 42 (2)费式数列 43 (3)巴斯卡(Pascal)三角形 44 (4)蒙地卡罗法求 PI 45 (5)最大公因数.最小公倍数 46 (6)阿姆斯壮数 ...

随机推荐

  1. js学习——基础知识

    数据类型 函数.方法 变量作用域 运算符 条件语句 break和continue typeof 错误(异常) 变量提升 严格模式 JSON void(0) JavaScript            ...

  2. jdbctemplate 调用oracle 有返回(会话型临时表数据的)结果的存储过程

    注:本文为博主 原创. jdbctemplate 调用oracle存储过程 事务 临时表  有返回结果 1:java 代码 本逻辑代码本是想把 java 代码里的list<Strign>类 ...

  3. Java 8 中的 Lambda 表达式

    Lambda 表达式是 Java 8 最受欢迎的功能.人们将函数式编程的概念引入了 Java 这门完全面向对象的命令式编程语言. 关于函数式编程是如何运作的,这个话题超出了本文的范围,不过我们会提炼出 ...

  4. angular基础巩固

    angular中的模块化 //定义模块 []为依赖的模块 moduleName可以使用[]模块中定义的controller filter .. var app=angular.module('modu ...

  5. mysql where和having的区别

    简单描述:需要查询一个数量count,于是做分组查询后,发现有的数据没有过滤掉,于是就想加上过滤条件,就在group by后边写了where ,发现不好使,直接就报错了,查了一下,where只能写在g ...

  6. 2017-2018-2 20165314 实验三《 敏捷开发与XP实践》实验报告

    知识点: 1.XP团队使用现场客户.特殊计划方法和持续测试来提供快速的反馈和全面的交流: -XP是以开发符合客户需要的软件为目标而产生的一种方法论 -XP是一种以实践为基础的软件工程过程和思想 -XP ...

  7. Git使用三:git的使用流程

    先创建仓库 创建一个文件夹,作为仓库使用 初始化仓库,在仓库目录的命令行下输入:git init 第一步:创建一个文件,并写入内容,这里写入内容的时候,要把编码设置为utf-8 第二步:输入命令将文件 ...

  8. MySql-8.0.12 安装教程

    MySql-8.0.12 安装教程随笔https://www.cnblogs.com/CrazyDemo/p/9409995.html MySQL 安装https://m.runoob.com/mys ...

  9. innobackupex做MySQL增量备份及恢复

    http://www.cnblogs.com/paul8339/p/6731688.html

  10. JDK1.7 Update14 HotSpot虚拟机GC收集器

    在测试服务器上使用如下命令可以查看当前使用的 GC收集器,当然不止这一个命令可以看到,还有其他一些方式 第三列”=”表示第四列是参数的默认值,而”:=” 表明了参数被用户或者JVM赋值了 [csii@ ...