本文实例讲述了Python使用辗转相除法求解最大公约数的方法。共享给大家供大家参考,详细如下:

之前总结过一次高德纳TAOCP中的最大公约数求解,其实课后题中的算法改要求实现的是辗转相除法求解最大公约数。

这个题目我最初的了解了解错了,自然也没有做出标准答案。现在按照标准答案的解答写一下相应的代码实现:

# -*- coding:utf-8 -*-

#! python2

def MaxCommDivisor(m,n):

while m * n != 0:

m = m % n

if m == 0:

return n

else:

n = n % m

if n == 0:

return m

print(MaxCommDivisor(55,120))

程序的执行结果:

交换一下两个数字的位置,代码如下:

# -*- coding:utf-8 -*-

#! python2

def MaxCommDivisor(m,n):

while m * n != 0:

m = m % n

if m == 0:

return n

else:

n = n % m

if n == 0:

return m

print(MaxCommDivisor(120,55))

程序的执行结果:

题目提示中提到了会降低效率,通过上面的代码来看,效率的损失应该是在除法以及判断上。在此,把之前算法的代码拿过来对比一下:

def CommDevisor(m,n):

r = m % n

while r != 0:

m = n

n = r

r = m % n

return n

print(CommDevisor(120,25))

运行结果:

新版算法在循环中,多了一个除法以及比较操作。其实,比较的效率还是不错的,但是除法的运算会导致效率的降低。

PS:这里再为大家推荐几个计算工具供大家进一步参考借鉴:

线上一元函数(方程)求解计算工具:http://tool.in68.com/jisuanqi/equ_jisuanqi

科学计算器线上使用_高级计算器线上计算:http://tool.in68.com/jisuanqi/jsqkexue

线上计算器_标准计算器:http://tool.in68.com/jisuanqi/jsq

更多关于Python相关内容感兴趣的读者可查看本站专题:《Python数学运算技巧总结》、《Python数据结构与算法教程》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》、《Python入门与进阶经典教程》及《Python文件与目录操作技巧汇总》

希望本文所述对大家Python程序设计有所帮助。

python辗转相除法求最大公约数、最小公倍数_Python使用辗转相除法求解最大公约数的方法示例...相关推荐

  1. python辗转相除法求最大公约数最小公倍数_Python基于辗转相除法求解最大公约数的方法示例...

    本文实例讲述了Python基于辗转相除法求解最大公约数的方法.分享给大家供大家参考,具体如下: 之前总结过一次高德纳TAOCP中的最大公约数求解,其实课后题中的算法修改要求实现的是辗转相除法求解最大公 ...

  2. python计算最大公约数函数_Python实现的求解最大公约数算法示例

    本文实例讲述了Python实现的求解最大公约数算法.分享给大家供大家参考,具体如下: 使用Python求解两个数的最大公约数的时候用到了前面介绍的分解质因式.其实,我写分解质因式程序的时候就是因为发现 ...

  3. python最大公约数代码_Python实现的求解最大公约数算法示例

    本文实例讲述了python实现的求解最大公约数算法.分享给大家供大家参考,具体如下: 使用Python求解两个数的最大公约数的时候用到了前面介绍的分解质因式.其实,我写分解质因式程序的时候就是因为发现 ...

  4. __init__在python中的用法知乎_python使用selenium爬虫知乎的方法示例

    说起爬虫一般想到的情况是,使用 python 中都通过 requests 库获取网页内容,然后通过 beautifulSoup 进行筛选文档中的标签和内容.但是这样有个问题就是,容易被反扒机制所拦住. ...

  5. python解一元二次方程步骤-Python实现求解一元二次方程的方法示例

    Python实现求解一元二次方程的方法示例 本文实例讲述了Python实现求解一元二次方程的方法.分享给大家供大家参考,具体如下: 1. 引入math包 2. 定义返回的对象 3. 判断b*b-4ac ...

  6. python最大公约数计算的程序代码_Python实现的求解最大公约数算法示例

    本文实例讲述了Python实现的求解最大公约数算法.分享给大家供大家参考,具体如下: 使用Python求解两个数的最大公约数的时候用到了前面介绍的分解质因式.其实,我写分解质因式程序的时候就是因为发现 ...

  7. python求数字平均值_Python简单计算数组元素平均值的方法示例

    本文实例讲述了Python简单计算数组元素平均值的方法.分享给大家供大家参考,具体如下: Python 环境:Python 2.7.12 x64 IDE : Wing IDE Professional ...

  8. python如何求列表的平均值_python如何求列表平均值?

    推荐教程:<python视频教程> python如何求列表平均值? python函数求列表平均值的方法: 用法:mean(matrix,axis=0)其中matrix为一个矩阵,axis为 ...

  9. python函数求n年后本息_Python自定义函数计算给定日期是该年第几天的方法示例...

    本文实例讲述了Python自定义函数计算给定日期是该年第几天的方法.分享给大家供大家参考,具体如下: 写一个函数,计算给定日期是该年的第几天. 满足闰年的条件: 闰年是公历中的名词,能被4整除但不能被 ...

最新文章

  1. Scrum介绍——续
  2. redis集合数据过期_关于redis性能问题分析和优化
  3. JAVA学习笔记-“Hello World”
  4. 安卓手机充电慢_非 iPhone 12 独享,安卓系统手机也能用 MagSafe 充电|手机|安卓系统|充电器|安卓手机...
  5. Android:源码环境编译自定义的APP到ROM(System Image)中
  6. gophp解释器_go语言环境搭建、基本使用
  7. HTML:canvas画圆形加矩形组合
  8. pytorch自动微分的几个例子
  9. MySQL创建视图的语法格式,MySQL如何创建视图
  10. linux ntfs u盘启动盘,u盘NTFS格式制作PE+CDlinux+ubuntu多系统启动盘
  11. Linux vi编辑保存退出时错误E45:‘readonly‘ optionisset(add ...)
  12. linux安装界面键盘失灵,安装win7鼠标键盘失灵怎么办_win7安装界面鼠标键盘失灵解决方法【147下载站】...
  13. RSA 中根据 (N, e, d) 求 (p, q)
  14. 如何在Jupyter Notebook中编写R程序
  15. python numpy 实现与(and),非与(not),或(or),异或(xor)逻辑运算!
  16. 用户显示图片的服务器是什么,显示服务器上的图片怎么写
  17. 华为推出智能眼镜;苹果首次在俄罗斯被起诉
  18. HTML(3):IE浏览器编程
  19. 人工智能发展的核心——机器学习
  20. c语言:九九乘法表 | 正三角形 | 倒三角形

热门文章

  1. 简单爱--奋斗5年 从月薪3500到700万
  2. ZCU102基于Petalinux挂载NVMe SSD
  3. 如何在 CentOS 7 上安装杀毒软件ClamAV
  4. 【阿尼亚喜欢BigData】“红亚杯”Python编程专题赛——满分解析⑤
  5. mysql的主键有哪几种?如何做选择?
  6. 第三季百度网盘AI大赛盛夏来袭,寻找热爱AI的你!
  7. fiddler限制网速,自定义限制网速
  8. PHP实现邮件群发机
  9. CentOS8安装telnet
  10. 最近超火的赚钱工具Python到底怎么用?