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 相关文章推荐
Django rest framework实现分页的示例
May 24 Python
django 删除数据库表后重新同步的方法
May 27 Python
基于Pandas读取csv文件Error的总结
Jun 15 Python
详解python使用pip安装第三方库(工具包)速度慢、超时、失败的解决方案
Dec 02 Python
一文秒懂python读写csv xml json文件各种骚操作
Jul 04 Python
PyQt 图解Qt Designer工具的使用方法
Aug 06 Python
VSCode中自动为Python文件添加头部注释
Nov 14 Python
解决django无法访问本地static文件(js,css,img)网页里js,cs都加载不了
Apr 07 Python
Pycharm如何导入python文件及解决报错问题
May 10 Python
社区版pycharm创建django项目的方法(pycharm的newproject左侧没有项目选项)
Sep 23 Python
selenium自动化测试入门实战
Dec 21 Python
Django url 路由匹配过程详解
Jan 22 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
PHP基础之运算符的使用方法
2013/04/28 PHP
PHP实现股票趋势图和柱形图
2015/02/07 PHP
php+mysql实现简单的增删改查功能
2015/07/13 PHP
WordPress中用于获取文章作者与分类信息的方法整理
2015/12/17 PHP
PHP中str_split()函数的用法讲解
2019/04/11 PHP
使javascript也能包含文件
2006/10/26 Javascript
phpwind放自动注册方法
2006/12/02 Javascript
javascript优先加载笔记代码
2008/09/30 Javascript
Cookie 小记
2010/04/01 Javascript
Firefox中beforeunload事件的实现缺陷浅析
2012/05/03 Javascript
使用javascript创建快捷方式的简单实例
2013/08/09 Javascript
jQuery函数的第二个参数获取指定上下文中的DOM元素
2014/05/19 Javascript
基于jQuery实现的QQ表情插件
2015/08/25 Javascript
深入理解Java线程编程中的阻塞队列容器
2015/12/07 Javascript
javascript跑马灯抽奖实例讲解
2020/04/17 Javascript
javascript html5 canvas实现可拖动省份的中国地图
2016/03/11 Javascript
Node.js项目中调用JavaScript的EJS模板库的方法
2016/03/11 Javascript
node.js使用cluster实现多进程
2016/03/17 Javascript
javascript的理解及经典案例分析
2016/05/20 Javascript
angularjs+bootstrap实现自定义分页的实例代码
2017/06/19 Javascript
Vue仿手机qq的实例代码(demo)
2017/09/08 Javascript
JavaScript实现与使用发布/订阅模式详解
2019/01/19 Javascript
SpringBoot+Vue开发之Login校验规则、实现登录和重置事件
2020/10/19 Javascript
[01:31:22]Ti4 循环赛第四日附加赛LGD vs Mouz
2014/07/13 DOTA
Python使用scrapy采集数据时为每个请求随机分配user-agent的方法
2015/04/08 Python
Python操作MongoDB详解及实例
2017/05/18 Python
Tensorflow 自带可视化Tensorboard使用方法(附项目代码)
2018/02/10 Python
Python使用MD5加密算法对字符串进行加密操作示例
2018/03/30 Python
python re.sub()替换正则的匹配内容方法
2019/07/22 Python
Django项目中使用JWT的实现代码
2019/11/04 Python
python3 kubernetes api的使用示例
2021/01/12 Python
同程旅游英文网站:LY.com
2018/11/13 全球购物
出国签证在职证明
2014/09/20 职场文书
2014领导班子“四风问题”对照检查材料思想汇报(执法局)
2014/09/21 职场文书
中学生社区服务活动报告
2015/02/05 职场文书
Win11快速关闭所有广告推荐
2022/04/19 数码科技