
编写函数计算两个数据m和n的最大公约数(不使用递归)
算法:
1.对于已知两数m,n,使得m>n;
2.m除以n得余数r;
3.若r=0,则n为最大公约数结束;否则执行步骤4;
4.m ← n,n ← r,再重复执行步骤2。
输入输出示例| 输入 | 输出 | |
| 示例 1 | 14,6 14,21 | 2 7 |
答案如下:
def max_yue(x,y):
while x%y != 0:
r = x%y
x = y
y = r
return y
a,b = map(int,input().split(","))
print(max_yue(a,b))
使用递归编写函数计算两个数据m和n的最大公约数
算法:
1.对于已知两数m,n,使得m>n;
2.m除以n得余数r;
3.若r=0,则n为最大公约数结束;否则执行步骤4;
4.m ← n,n ← r,再重复执行步骤2。
输入输出示例| 输入 | 输出 | |
| 示例 1 | 14,6 21,14 | 2 7 |
答案如下:
def max_yue(m,n):
if m % n == 0:
return n
else:
return max_yue(n,m%n)
a,b = map(int, input().split(','))
print(max_yue(a,b))
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)