gpt4 book ai didi

python - 我无法让我的代码迭代 x -= 1

转载 作者:太空宇宙 更新时间:2023-11-03 13:47:15 27 4
gpt4 key购买 nike

我正在麻省理工学院 6.00 学习 Python,并堆积了递归代码。我唯一想做的就是从 x 中迭代减去 1,但不知道该怎么做..

这是我的代码

def gcdIter(a, b):
'''
a, b: positive integers

returns: a positive integer, the greatest common divisor of a & b.
'''
# Your code here
x = min(a, b)
if max(a, b) % min(a, b) == 0:
return x
else:
return #What comes to iterate -1 from x

请帮忙!!!

最佳答案

您的代码过于复杂,试试这个改编自 wikipedia递归实现:

def gcd(a, b):
if b == 0:
return a
else:
return gcd(b, a % b)

您似乎在寻找一个迭代 解决方案(这个问题具有误导性)。如果是这样的话,这里有几个可能的实现,也改编自维基百科:

def gcd(a, b):
while b:
a, b = b, a % b
return a

def gcd(a, b):
while a != b:
if a > b:
a -= b
else:
b -= a
return a

关于python - 我无法让我的代码迭代 x -= 1,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17119338/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com