用Python使用input输入两个数,用递归求这两个数的最大公约数,并输出
时间: 2024-03-02 12:51:01 浏览: 73
递归算法求两个数的最大公约数
5星 · 资源好评率100%
好的,可以使用以下代码实现:
```python
def gcd(a, b):
if b == 0:
return a
else:
return gcd(b, a % b)
x = int(input("请输入第一个数:"))
y = int(input("请输入第二个数:"))
result = gcd(x, y)
print("最大公约数为:", result)
```
当我们调用 `gcd(x, y)` 函数时,如果 `y` 为0,则返回 `a` 的值,即 `x`,表示此时 `x` 就是最大公约数。否则,继续递归调用 `gcd(b, a % b)`,其中 `b` 为 `y`,`a % b` 表示 `x` 除以 `y` 的余数,即 `x` 对 `y` 的模。这样反复递归,直到 `y` 为0时,返回 `x`,表示此时 `x` 就是最大公约数。
以上代码中,我们使用 `input()` 函数从用户输入中获取了两个整数 `x` 和 `y`,并调用 `gcd()` 函数求得它们的最大公约数,最后将结果输出给用户。
阅读全文