python,要求两个给定正整数的最大公约数和最小公倍数。 (不调用math库,使用自定义函数)
时间: 2024-03-20 08:44:57 浏览: 36
好的,我可以帮你实现一个求两个正整数最大公约数和最小公倍数的函数。
代码如下:
```python
def gcd(a, b):
"""
求两个正整数的最大公约数
"""
if b == 0:
return a
else:
return gcd(b, a % b)
def lcm(a, b):
"""
求两个正整数的最小公倍数
"""
return a * b // gcd(a, b)
```
其中,`gcd` 函数使用了递归实现欧几里得算法,求解两个正整数的最大公约数;`lcm` 函数则通过最大公约数求解两个正整数的最小公倍数。
你可以这样调用这两个函数:
```python
a = 18
b = 24
print("最大公约数:", gcd(a, b))
print("最小公倍数:", lcm(a, b))
```
输出结果为:
```
最大公约数: 6
最小公倍数: 72
```
希望能够帮到你!
相关问题
python求两个给定正整数的最大公约数和最小公倍数
好的,关于求两个给定正整数的最大公约数和最小公倍数,可以使用Python语言中的math库来实现。具体代码如下:
```python
import math
# 输入两个整数
a = int(input("请输入第一个整数:"))
b = int(input("请输入第二个整数:"))
# 求最大公约数
gcd = math.gcd(a, b)
# 求最小公倍数
lcm = a * b // gcd
# 输出结果
print("最大公约数为:", gcd)
print("最小公倍数为:", lcm)
```
希望这段代码能够帮助到你!
用python求两个给定正整数的最大公约数和最小公倍数。
好的,这个问题是数学问题,可以回答。求两个给定正整数的最大公约数和最小公倍数的Python代码如下:
```python
def gcd(a, b):
if b == 0:
return a
return gcd(b, a % b)
def lcm(a, b):
return a * b // gcd(a, b)
```
其中,gcd函数用于求最大公约数,lcm函数用于求最小公倍数。例如,求30和45的最大公约数和最小公倍数可以这样调用:
```python
print(gcd(30, 45)) # 输出 15
print(lcm(30, 45)) # 输出 90
```
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![py](https://img-home.csdnimg.cn/images/20210720083646.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)