Python实现利用最大公约数求三个正整数的最小公倍数示例


Posted in Python onSeptember 30, 2017

本文实例讲述了Python实现利用最大公约数求三个正整数的最小公倍数。分享给大家供大家参考,具体如下:

在求解两个数的小公倍数的方法时,假设两个正整数分别为a、b的最小公倍数为d,最大公约数为c。存在这样的关系d=a*b/c。通过这个关系式,我们可以快速的求出三个正整数的最小公倍数。

def divisor(a,b):
  c = a%b
  while c>0:
    a=b
    b=c
    c=a%b
  return b
x1 = input("input1:")
x2 = input("input2:")
x3 = input("input3:")
x0 = x1*x2/divisor(x1,x2)
x0 = x0*x3/divisor(x0,x3)
print "the least multiple is:%d"%x0

通过函数divisor求解两个数的最大公约数,然后进行两次求解最小公倍数即可知道三个正整数x1、x2、x3的最小公倍数。

其实可以通过divisor1函数求两个数的最小公倍数,再进行嵌套调用实现三个数的最小公倍数。

divisor1函数如下:

def divisor1(a,b):
  a1 = a
  b1 = b
  c = a%b
  while c>0:
    a=b
    b=c
    c=a%b
  return a1*b1/b

嵌套过程如下:

x0 = divisor1(divisor1(x1,x2),x3)

可以求得三个正整数的最小公倍数。

Tip: a-bx=c,可知当一个数为a、b的公约数时,同时也是c的约数。

通过最大公约数即可得到最小公倍数的求解。

def min_multi(a,b):
  return a*b/divisor1(a,b)

求解质数的函数:

def isPrime(n):
  for i in range(2,int(n**0.5)+1):
    if n%i==0:
      return False
  return True

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

在线一元函数(方程)求解计算工具:
http://tools.3water.com/jisuanqi/equ_jisuanqi

科学计算器在线使用_高级计算器在线计算:
http://tools.3water.com/jisuanqi/jsqkexue

在线计算器_标准计算器:
http://tools.3water.com/jisuanqi/jsq

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

Python 相关文章推荐
在Python中封装GObject模块进行图形化程序编程的教程
Apr 14 Python
取numpy数组的某几行某几列方法
Apr 03 Python
Python面向对象之类的定义与继承用法示例
Jan 14 Python
Python 常用模块 re 使用方法详解
Jun 06 Python
如何基于python操作json文件获取内容
Dec 24 Python
Python守护进程实现过程详解
Feb 10 Python
Python API len函数操作过程解析
Mar 05 Python
python要安装在哪个盘
Jun 15 Python
python的json包位置及用法总结
Jun 21 Python
Python调用百度OCR实现图片文字识别的示例代码
Jul 17 Python
python利用 keyboard 库记录键盘事件
Oct 16 Python
Python中BeautifulSoup通过查找Id获取元素信息
Dec 07 Python
Python基于pygame模块播放MP3的方法示例
Sep 30 #Python
Python实现自动为照片添加日期并分类的方法
Sep 30 #Python
Python实现获取照片拍摄日期并重命名的方法
Sep 30 #Python
Python3利用SMTP协议发送E-mail电子邮件的方法
Sep 30 #Python
Python字符编码与函数的基本使用方法
Sep 30 #Python
详谈Python高阶函数与函数装饰器(推荐)
Sep 30 #Python
深入浅出学习python装饰器
Sep 29 #Python
You might like
基于mysql的bbs设计(三)
2006/10/09 PHP
Yii2实现自定义独立验证器的方法
2017/05/05 PHP
多个Laravel项目如何共用migrations详解
2018/09/25 PHP
各浏览器对link标签onload/onreadystatechange事件支持的差异分析
2011/04/27 Javascript
JavaScript中的作用域链和闭包
2012/06/30 Javascript
js中escape对应的C#解码函数 UrlDecode
2012/12/16 Javascript
Jquery Ajax Error 调试错误的技巧
2015/11/20 Javascript
BootStrap制作导航条实例代码
2016/05/06 Javascript
jQuery链式调用与show知识浅析
2016/05/11 Javascript
jQuery 3.0十大新特性最终版发布
2016/07/14 Javascript
jquery操作checkbox火狐下第二次无法勾选的解决方法
2016/10/10 Javascript
微信小程序开发经验总结(推荐)
2017/01/11 Javascript
javascript笔记之匿名函数和闭包
2017/02/06 Javascript
Bootstrap警告框(Alert)插件使用方法
2017/03/21 Javascript
Vue响应式原理详解
2017/04/18 Javascript
Express + Session 实现登录验证功能
2017/09/08 Javascript
ReactJS实现表单的单选多选和反选的示例
2017/10/13 Javascript
Angular4学习之Angular CLI的安装与使用教程
2018/01/04 Javascript
解决layui前端框架 form表单,table表等内置控件不显示的问题
2018/08/19 Javascript
web.py在SAE中的Session问题解决方法(使用mysql存储)
2015/06/24 Python
使用Python的Bottle框架写一个简单的服务接口的示例
2015/08/25 Python
django admin 后台实现三级联动的示例代码
2018/06/22 Python
使用Python制作自动推送微信消息提醒的备忘录功能
2018/09/06 Python
使用python绘制二元函数图像的实例
2019/02/12 Python
Python 脚本实现淘宝准点秒杀功能
2019/11/13 Python
flask框架url与重定向操作实例详解
2020/01/25 Python
用Python做一个久坐提醒小助手的示例代码
2020/02/10 Python
基于CSS3实现图片模糊过滤效果
2015/11/19 HTML / CSS
Expedia英国:全球最大的在线旅游公司
2017/09/07 全球购物
Laura Mercier官网:彩妆大师罗拉玛斯亚的化妆品牌
2018/01/04 全球购物
瑞典手机壳品牌:Richmond & Finch
2018/04/28 全球购物
学生吸烟检讨书
2014/09/14 职场文书
银行开户授权委托书格式
2014/10/10 职场文书
母亲节寄语大全
2015/02/27 职场文书
jquery插件实现代码雨特效
2021/04/24 jQuery
详解Python函数print用法
2021/06/18 Python