Python GCD - 错误

Python GCD - errors

我的代码有问题,它的目的是找到两个输入的 GCD。当我尝试 运行 模块时,它告诉我 'gcd' 未定义。

def GCD(12,4):
    gcd = 1
    for i in range(2, max(12,4)/2):
        if((12 % i == 0) and (4 % i == 0)):
            gcd = i
    return gcd

您没有调用 GCF 函数。您刚刚定义了函数。您需要添加一行

gcf = GCF(a,b)

在你接受输入的地方之后。即在b = int(input('denomenator: '))

之后

编辑:

将输入语句更改为

a = float(input('numerator: '))
b = float(input('denomenator: '))

您可以使用欧几里德除法算法在更短的时间内找到gcd。 取浮点数到a和b.

def gcd(a,b):
    c = 1
    a,b = max(a,b),min(a,b)
    while c != 0:
        c = a%b
        a,b = b,c
    return a
print gcd(12,5)