x = int(input())
y = int(input())
if x>y:
if x%y==0:
print(y)
else:
z = x%y
while z>0:
z = (x//y)%z
else:
if y%x==0:
print(x)
else:
z1 = y%x
while z1>0:
z1 = (y//x)%z1
查找GCD的代码。由于我是编程新手,我不知道其他条件的打印功能应该在哪里正确打印GCD。
答案 0 :(得分:0)
首先,我建议使用内置gcd
功能来实现此目标!这更像是 pythonic !
>>> from fractions import gcd
>>> gcd(a,b)
如果你想要一个算法,你可以使用它:
def gcd(a, b):
while b != 0:
(a, b) = (b, a % b)
return a
答案 1 :(得分:0)
按照你的逻辑,我只修改一些代码,以便它可以正常运行:
以下是修改后的代码:
x = int(input())
y = int(input())
if x>y:
if x%y==0:
print(y)
else:
x = x%y
while x!=0:
y=x
x=x%y
print y
else:
if y%x==0:
print(x)
else:
y=y%x
while y!=0:
x=y
y=y%x
print x
希望这能帮助你在老师面前展示:)