递归求最大公约数和最小公倍数
时间: 2023-09-14 13:09:19 浏览: 145
递归求最大公约数可以使用辗转相除法,递归求解,直到余数为0时,返回被除数即为最大公约数。
代码示例:
```python
def gcd(a, b):
if b == 0:
return a
else:
return gcd(b, a % b)
```
递归求最小公倍数可以利用最大公约数的性质,通过相乘再除以最大公约数来求解。
代码示例:
```python
def lcm(a, b):
return a * b // gcd(a, b)
```
其中,`//`表示整除运算符。
相关问题
js利用递归求最大公约数 和最小公倍数
求最大公约数:
```javascript
function gcd(a, b) {
if (b === 0) {
return a;
} else {
return gcd(b, a % b);
}
}
```
求最小公倍数:
```javascript
function lcm(a, b) {
return (a * b) / gcd(a, b);
}
```
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)
```
使用示例:
```python
a = 24
b = 36
print("最大公约数:", gcd(a, b))
print("最小公倍数:", lcm(a, b))
```
输出结果:
```
最大公约数: 12
最小公倍数: 72
```