输入两个正整数a和b,调用函数gcd求a和b最大公约数,
时间: 2024-03-12 08:45:20 浏览: 70
好的,以下是实现该功能的 Python 代码:
```python
def gcd(a, b):
if b == 0:
return a
else:
return gcd(b, a % b)
a = int(input("请输入第一个正整数:"))
b = int(input("请输入第二个正整数:"))
print(f"{a}和{b}的最大公约数为:{gcd(a, b)}")
```
其中,`gcd` 函数采用递归方式实现求最大公约数,当 `b` 为 0 时,返回 `a`;否则,返回 `b` 和 `a % b` 的最大公约数。输入时,使用 `input` 函数获取用户输入的两个正整数,最后使用 `print` 函数输出结果。
相关问题
输入两个正整数a和b,调用函数gcd求a和b最大公约数
可以使用辗转相除法求解两个正整数的最大公约数,辗转相除法的基本思想是用较小数除较大数,再用余数去除除数,如此反复,直到余数为零为止,而最后的除数就是这两个数的最大公约数。
以下是使用 Python 实现的代码:
```python
def gcd(a, b):
while b != 0:
a, b = b, a % b
return a
```
函数 `gcd` 接受两个参数 `a` 和 `b`,并在循环中执行辗转相除法,最终返回最大公约数 `a`。
用python输入两个正整数a和b,调用函数gcd求a和b最大公约数
可以使用Python内置的math库中的gcd函数,也可以自己实现一个gcd函数,如下所示:
使用math库中的gcd函数:
```
import math
a = int(input("Enter the first positive integer: "))
b = int(input("Enter the second positive integer: "))
result = math.gcd(a, b)
print("GCD of", a, "and", b, "is", result)
```
自己实现一个gcd函数:
```
def gcd(a, b):
while b:
a, b = b, a % b
return a
a = int(input("Enter the first positive integer: "))
b = int(input("Enter the second positive integer: "))
result = gcd(a, b)
print("GCD of", a, "and", b, "is", result)
```
阅读全文