求最大公约数,辗转相除法。仍然是递归和递推的算法。不解释,上代码。


def divideNum01(n1, n2):
    while n1 % n2 != 0:
        r = n1 % n2
        n1 = n2
        n2 = r
    else:
        return n2
        
        
def divideNum02(n1, n2):
    if n1 % n2 == 0:
        return n2
    else:
        return divideNum02(n2, n1 % n2)