头歌编写一个能计算两个正整数最大公约数和最小公倍数的函数。
时间: 2024-12-22 08:13:27 浏览: 3
用python编写两个正整数的最大公约数和最小公倍数的小程序
在Python中,你可以使用欧几里得算法(也称为辗转相除法)来编写一个函数,用于计算两个正整数的最大公约数(Greatest Common Divisor,简称GCD),然后通过这两个数的乘积除以它们的最大公约数得到最小公倍数(Least Common Multiple,简称LCM)。这里是一个简单的示例:
```python
def gcd(a, b):
while b != 0:
a, b = b, a % b
return a
def lcm(a, b):
return a * b // gcd(a, b)
# 示例
def max_gcd_lcm(num1, num2):
print(f"最大公约数 (GCD): {gcd(num1, num2)}")
print(f"最小公倍数 (LCM): {lcm(num1, num2)}")
# 调用函数
max_gcd_lcm(12, 18)
```
在这个例子中,`gcd()` 函数递归地找到两个数的最大公约数,而 `lcm()` 函数则利用 GCD 来计算 LCM。当你提供两个正整数作为参数给 `max_gcd_lcm()` 函数,它会打印出这两个数的最大公约数和最小公倍数。
阅读全文