17讲习题-Python教程老版
老版本用辗转相除法求最大公约数,我的程序如下:def gcd(x,y):
if x % y != 0:
gcd(y, x % y)
else:
return y
x = int(input('Please input x: '))
y = int(input('Please input y: '))
if y > x:
x, y = y, x
print(gcd(x,y))
当采用1997和615这两个互质的数 print的为啥是None呢? 改成这样:
def gcd(x,y):
if x % y != 0:
return gcd(y, x % y)
else:
return y
x = int(input('Please input x: '))
y = int(input('Please input y: '))
if y > x:
x, y = y, x
print(gcd(x,y)) qiuyouzhi 发表于 2021-4-12 20:35
改成这样:
感谢,这样修改后的确就没有问题了。想问下为啥这里if后面需要return呢 璀璨尘世 发表于 2021-4-12 20:45
感谢,这样修改后的确就没有问题了。想问下为啥这里if后面需要return呢
不返回的话下面那个 return y 就无法返回出去了 qiuyouzhi 发表于 2021-4-12 20:46
不返回的话下面那个 return y 就无法返回出去了
好嘞 感谢!
页:
[1]