Python编程:轻松实现最大公约数与最小公倍数计算
python求最大公约数和最小公倍数
Python求最大公约数和最小公倍数。
函数定义defhcf(x,y):该函数返回两个数字的最大公约数。
#获取最小值ifx>y:smaller=yelse:smaller=xforiinrange(1,smaller+1):if((x%i==0)and(y%i==0)):hcf=ireturnhcf
#用户输入了两个数字。
num1=int(input("输入第一个数字:"))num2=int(input("输入第二个数字:"))print(num1","和",num2"的最大公约数除数是“,hcf(num1,num2))。
求两个数的最小公倍数的算法有很多种。
最有效的算法是先计算,求最大公约数。
使用欧氏除法,我们首先存储a和b的值的副本,然后如果a²b不为0则求余数。
并且这次设置b等于余数
重复上述除以0的操作,直到余数为0,且B的值为前两个数的最大公约数。
此时,两个数除以最大公约数的初始乘积就是这两个数的最小公倍数。
python求最大公约数和最小公倍数
我不知道这是否称为欧几里得除法。
使用方法:
python编写2个函数代码,实现求最小公倍数和最大公约数的功能
函数定义:
Common_multiple(number1,number2):#求两个数的最小公倍数
Maximum_common_divisor(*number):#求任意数的最小公倍数数字个数
Minimum_common_multiple(*number):#求任意多个数字的最大公因数
程序缩进如下:
程序捕获运行结果显示:
运行结果函数具体代码:点击获取缩进版
defCommon_multiple(number1,number2):#求两个数的最小公倍数whilenumber1%number2!=0:number1,number2=number2,(number1%number2)returnnumber2defMaximum_common_divisor(*number):#求任意数字的最小公倍数
1:number=[Common_multiple(number[i],number[i+1])foriinrange(0,len(number)-1)]returnnumber[0]defMinimum_common_multiple(*number):#求任意多个数字的最大公因数1:number=[number[i]*number[i+1]/common_multiple(number[i],number[i+1])foriinrange(0,len(number)-1)]返回number[0]