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数独游戏
Mar 30 Python
Python获取指定字符前面的所有字符方法
May 02 Python
用python处理图片实现图像中的像素访问
May 04 Python
Python中@property的理解和使用示例
Jun 11 Python
Python处理时间日期坐标轴过程详解
Jun 25 Python
Python values()与itervalues()的用法详解
Nov 27 Python
Python递归实现打印多重列表代码
Feb 27 Python
Python matplotlib修改默认字体的操作
Mar 05 Python
Python对象的属性访问过程详解
Mar 05 Python
Python OpenCV去除字母后面的杂线操作
Jul 05 Python
python切割图片的示例
Nov 12 Python
Python-typing: 类型标注与支持 Any类型详解
May 10 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
SSI指令
2006/11/25 PHP
php实现根据url自动生成缩略图的方法
2014/09/23 PHP
Yii使用技巧大汇总
2015/12/29 PHP
php常用的工具开发整理
2019/09/26 PHP
Thinkphp5.0 框架实现控制器向视图view赋值及视图view取值操作示例
2019/10/12 PHP
javascript 贪吃蛇实现代码
2008/11/22 Javascript
面向对象的javascript(笔记)
2009/10/06 Javascript
javascript当onmousedown、onmouseup、onclick同时应用于同一个标签节点Element
2010/01/05 Javascript
基于javascript滚动图片具体实现
2013/11/18 Javascript
快速解决jQuery与其他库冲突的方法介绍
2014/01/02 Javascript
JavaScript实现图片滑动切换的代码示例分享
2016/03/06 Javascript
js插件Jcrop自定义截取图片功能
2016/10/14 Javascript
vue.js初学入门教程(2)
2016/11/07 Javascript
微信小程序-消息提示框实例
2016/11/24 Javascript
jQuery EasyUI 获取tabs的实例解析
2016/12/06 Javascript
js实现下拉菜单效果
2017/03/01 Javascript
JavaScript实现三级联动菜单实例代码
2017/06/26 Javascript
Angular4学习笔记之根模块与Ng模块
2017/09/09 Javascript
Vue实现简单的跑马灯
2020/05/25 Javascript
[01:14:05]《加油DOTA》第四期
2014/08/25 DOTA
详解Python函数作用域的LEGB顺序
2016/05/14 Python
python之pandas用法大全
2018/03/13 Python
使用python socket分发大文件的实现方法
2019/07/08 Python
python中关于数据类型的学习笔记
2020/07/19 Python
Python 处理日期时间的Arrow库使用
2020/08/18 Python
python批量修改交换机密码的示例
2020/09/22 Python
苹果美国官方商城:Apple美国
2016/08/24 全球购物
安全检查验收制度
2014/01/12 职场文书
《风筝》教学反思
2014/04/10 职场文书
小学一年级评语大全
2014/04/22 职场文书
企业员工爱岗敬业演讲稿
2014/08/26 职场文书
2014年全国爱牙日宣传活动方案
2014/09/21 职场文书
乡镇党的群众路线教育实践活动领导班子对照检查材料
2014/09/25 职场文书
教师师德师风整改措施
2014/10/24 职场文书
redis实现排行榜功能
2021/05/24 Redis
CSS几步实现赛博朋克2077风格视觉效果
2021/06/16 HTML / CSS