python教材课后题最大公约数和最小公倍数_求最大公约数和最小公倍数_python

"""写两个函数,分别求两个整数的最大公约数和最小公倍数,调用这两个函数,并输出结果。两个整数由键盘输入。"""

'''

设两个整数u和v,用辗转相除法求最大公约数的算法如下: 例如:u=4和v=6

if v>u v>u即:4<6

将变量u与v的值互换(使大者u为被除数) 变成 u=6,v=4

while(u/v的余数r!=0) u/v=6/4=1,余数r为2

{ {

u=v(使除数变为被除数u) u=v=4

v=r(使余数变为除数v) v=r=2

} }

输出最大公约数 u/v=4/2=2,余数为0,则最大公约数为r

最小公倍数为:u*v/最大公约数r 最小公倍数为:u*v/r=6*4/2=12

'''

def gongyue(u,v):

if u

t=u

u=v

v=t

r=u%v

while r!=0:

u=v

v=r

r=u%v

return v

def gongbei(u,v,h):

return u*v/h

a=int(input('第一个整数:'))

b=int(input('第二个整数:'))

print('最大公约数为',gongyue(a,b))

print('最小公倍数为',gongbei(a,b,gongyue(a,b)))

"""结果:

第一个整数:4

第二个整数:6

最大公约数为 2

最小公倍数为 12.0

"""

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值