python求最大公约数和最小公倍数的简单方法


Posted in Python onFebruary 13, 2020

python怎么求最大公约数和最小公倍数

一、求最大公约数

用辗转相除法求最大公约数的算法如下:

两个正整数a和b(a>b),它们的最大公约数等于a除以b的余数c和b之间的最大公约数。比如10和25,25除以10商2余5,那么10和25的最大公约数,等同于10和5的最大公约数。

具体代码如下:

def gongyue(a, b):

  """

  欧几里得算法----辗转相除法

  :param a: 第一个数

  :param b: 第二个数

  :return: 最大公约数

  """

  # 如果最终余数为0 公约数就计算出来了

  while(b!=0):

    temp = a % b

    a = b

    b = temp

  return a

二、求最小公倍数

求出a,b的最大公约数后,利用gongbei(a,b) = (a*b)/gongyue(a,b) 计算出两个数的最小公倍数:

# 求两个数的最小公倍数

def gongbei(a,b):

  return a * b / gongyue(a, b)

知识点补充

1. 求最小公倍数的算法:

最小公倍数 = 两个整数的乘积 / 最大公约数

所以我们首先要求出两个整数的最大公约数, 求两个数的最大公约数思路如下:

2. 求最大公约数算法:

① 整数A对整数B进行取整, 余数用整数C来表示 举例: C = A % B

② 如果C等于0,则C就是整数A和整数B的最大公约数

③ 如果C不等于0, 将B赋值给A, 将C赋值给B ,然后进行 1, 2 两步,直到余数为0, 则可以得知最大公约数

以上就是本次介绍的全部相关知识点,感谢大家的学习和对三水点靠木的支持。

Python 相关文章推荐
用Python实现一个简单的能够发送带附件的邮件程序的教程
Apr 08 Python
python用Pygal如何生成漂亮的SVG图像详解
Feb 10 Python
python3使用requests模块爬取页面内容的实战演练
Sep 25 Python
使用pycharm生成代码模板的实例
May 23 Python
python让列表倒序输出的实例
Jun 25 Python
对python同一个文件夹里面不同.py文件的交叉引用方法详解
Dec 15 Python
Django框架搭建的简易图书信息网站案例
May 25 Python
pandas删除行删除列增加行增加列的实现
Jul 06 Python
Python 从subprocess运行的子进程中实时获取输出的例子
Aug 14 Python
Python基础之函数原理与应用实例详解
Jan 03 Python
PyCharm汉化安装及永久激活详细教程(靠谱)
Jan 16 Python
Python 实现向word(docx)中输出
Feb 13 Python
python圣诞树编写实例详解
Feb 13 #Python
python如何实现复制目录到指定目录
Feb 13 #Python
Python制作简易版小工具之计算天数的实现思路
Feb 13 #Python
解决python-docx打包之后找不到default.docx的问题
Feb 13 #Python
Python更新所有已安装包的操作
Feb 13 #Python
python离线安装外部依赖包的实现
Feb 13 #Python
python获取依赖包和安装依赖包教程
Feb 13 #Python
You might like
杏林同学录(四)
2006/10/09 PHP
php max_execution_time执行时间问题
2011/07/17 PHP
PHP5.5安装PHPRedis扩展及连接测试方法
2017/01/22 PHP
解决php extension 加载顺序问题
2019/08/16 PHP
TP3.2.3框架文件上传操作实例详解
2020/01/23 PHP
Thinkphp 框架扩展之类库扩展操作详解
2020/04/23 PHP
laravel admin实现分类树/模型树的示例代码
2020/06/10 PHP
IE中createElement需要注意的一个问题
2010/07/13 Javascript
jquery中prop()方法和attr()方法的区别浅析
2013/09/06 Javascript
javascript事件冒泡实例分析
2015/05/13 Javascript
AngularJS上传文件的示例代码
2018/11/10 Javascript
Vue 数组和对象更新,但是页面没有刷新的解决方式
2019/11/09 Javascript
javascript实现画板功能
2020/04/12 Javascript
vue-cli4项目开启eslint保存时自动格式问题
2020/07/13 Javascript
微信小程序连接服务器展示MQTT数据信息的实现
2020/07/14 Javascript
解决vscode进行vue格式化,会自动补分号和双引号的问题
2020/10/26 Javascript
element-plus一个vue3.xUI框架(element-ui的3.x 版初体验)
2020/12/02 Vue.js
[02:40]2014DOTA2 国际邀请赛中国区预选赛 四大豪门抵达华西村
2014/05/23 DOTA
[01:13:46]iG vs Winstrike 2018国际邀请赛小组赛BO2 第一场 8.16
2018/08/17 DOTA
Python 获得命令行参数的方法(推荐)
2018/01/24 Python
Python实现线程状态监测简单示例
2018/03/28 Python
python 读取.csv文件数据到数组(矩阵)的实例讲解
2018/06/14 Python
python实现ID3决策树算法
2018/08/29 Python
实例分析python3实现并发访问水平切分表
2018/09/29 Python
对Python闭包与延迟绑定的方法详解
2019/01/07 Python
简单了解python关键字global nonlocal区别
2020/09/21 Python
Python 获取异常(Exception)信息的几种方法
2020/12/29 Python
预订从美国飞往印度的机票:MyTicketsToIndia
2017/05/19 全球购物
澳大利亚首屈一指的鞋类品牌:Tony Bianco
2018/03/13 全球购物
英语专业学生个人求职信
2014/01/28 职场文书
群众路线教育实践活动对照检查材料
2014/09/22 职场文书
2014年信用社工作总结
2014/11/25 职场文书
小兵张嘎观后感
2015/06/03 职场文书
员工手册董事长致辞
2015/07/29 职场文书
golang中字符串MD5生成方式总结
2021/07/04 Golang
Python字符串的转义字符
2022/04/07 Python