|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
def gcd(x, y):
while y:
t = x % y
x = y
y = t
return x
print(gcd(4, 6))
每一步我都带入进去了 就是不对啊。。。。 我应该是逻辑出问题了。。。。求助 哪位大神把每一步都帮我解释下。。。。。谢谢
看注释:
- def gcd(x, y):
- # 传入参数 x = 4, y = 6
- # 当数值数据作为条件判断时,只要非 0 或 0.0 都视为 True
- # 所以这里第一次进入循环时,y = 6 符合循环条件
- while y:
- # 第一次循环开始,y = 6 符合循环条件,执行循环体
- # 第二次循环开始,y = 4 依旧符合循环条件,循环继续
- # 第三次循环开始,y = 2 不符合循环条件,退出循环
- t = x % y
- # 第一次循环,t = 4 % 6 = 4
- # 第二次循环,t = 6 % 4 = 2
- # 第三次循环,t = 4 % 2 = 0
- x = y
- # 第一次循环,x = y = 6
- # 第二次循环,x = y = 4
- # 第三次循环,x = y = 2
- y = t
- # 第一次循环结束:y = t = 4,开始下次循环
- # 第二次循环结束:y = t = 2,开始下次循环
- # 滴三次循环结束:y = t = 0,开始下次循环
- # 最终返回 x = 2
- return x
- print(gcd(4, 6))
复制代码
|
|