6、写一个函数,输入一个数组,输出这个数组内最大值和最小值的最大公约数。两个数的最大公约数为能整除两个数的最大正整数。
时间: 2024-11-23 16:38:57 浏览: 6
输入两个正整数m和n求其最大公约数和最小公倍数 (2).pdf
在Python中,我们可以编写一个函数来找到数组中最大值和最小值的最大公约数(Greatest Common Divisor, GCD)。首先,我们需要引入`math`模块中的`gcd`函数,它可以帮助我们计算两个数的最大公约数。然后,我们将遍历数组找出最大值和最小值,并递归地应用`gcd`函数。
这是一个简单的示例:
```python
import math
def max_gcd(arr):
# 找出数组中的最大值和最小值
max_val = max(arr)
min_val = min(arr)
def gcd_two_numbers(a, b):
return math.gcd(a, b) if b != 0 else a
# 使用欧几里得算法(辗转相除法)计算最大值和最小值的最大公约数
return gcd_two_numbers(max_val, min_val)
# 示例用法
arr = [48, 18, 72, 36]
result = max_gcd(arr)
print(f"数组 {arr} 中最大值和最小值的最大公约数是: {result}")
阅读全文