我被要求使用 Python 中的递归函数找到整数x和y的最大公约数。条件表示:如果 y 等于 0,则 gcd (x,y) 为x;否则 gcd(x,y) 为 gcd(y,x%y)。为了尝试该代码,我被要求从用户那里获取两个整数。这是我尝试过的:
def gcd(x , y):
if y == 0:
return x
else:
return (y, x % y)
num_one = int(input('Enter a value for x: '))
num_two = int(input('Enter a value for y: '))
if num_two == 0:
print(num_one)
else:
print(gcd(num_two))
Run Code Online (Sandbox Code Playgroud)
这是我得到的错误: TypeError: gcd() Missing 1 requiredpositional argument: 'y'
先感谢您。