我的代码存在问题,其目的是找到两个输入的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
答案 0 :(得分:2)
您没有调用GCF
函数。您刚刚定义了您的功能。您需要添加一行
gcf = GCF(a,b)
在您接受输入的地方之后。那是在b = int(input('denomenator: '))
编辑:
将输入语句更改为
a = float(input('numerator: '))
b = float(input('denomenator: '))
答案 1 :(得分:1)
您可以使用 Euclid划分算法在更短的时间内找到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)