求最大公约数和最小公倍数

Posted 算法与编程之美

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了求最大公约数和最小公倍数相关的知识,希望对你有一定的参考价值。

0 引言

通过程序,找出输入的两个数的最大公约数和最小公倍数,程序无法直接找出,需要通过循环先找出公约数,公倍数。然后再输出其中的最大公约数和最小公倍数。

1问题

输入两个数,找出最大公约数和最小公倍数。

2方法

先输入两个数,建立一个循环,找出从1到最小那个数中这两个数的公约数放入一个空列表中,染后求出最大的数。最小公倍数就为这两个数的积除最大公约数。

3实验结果与讨论

代码清单 1

def fan(a,b):
   list=[]
   n=min(a,b)
   for i in range(2,n+1):
       if a%i==0 and b%i==0:
           list.append(i)
   if list != []:
       k=int(max(list))
       print('最大公约数%d'%k)
   else:
       print('没有最大公倍数')
   list_1=[]
   n=max(a,b)
   for i in range(1,n+1):
       for y in range(1,n+1):
           if a*i==b*y:
               m=a*i
               list_1.append(m)
   l=int(min(list_1))
   print('最小公倍数%d'%l)
a,b=map(eval,input('输入两个数:').split())
fan(a,b)

4 结语

找公约数的过程中,需要注意循环的使用以及缩进问题,条件语句和循环共用,注意什么时候结束的。

以上是关于求最大公约数和最小公倍数的主要内容,如果未能解决你的问题,请参考以下文章

求最大公约数和最小公倍数

求最大公约数和最小公倍数

求GCD和LCM,即指求最大公约数和最小公倍数。

C语言中如何调用函数求最大公约数和最小公倍数

编写两个函数,分别求最大公约数和最小公倍数python

用python语言求两个数的最大公约数和最小公倍数