Python定义一个函数,输入一个整数列表,输出其中最大的质数。如果不存在,则返回1。
时间: 2024-02-25 10:51:30 浏览: 73
可以使用以下代码实现:
```python
def max_prime(nums):
max_prime_num = 1
for num in nums:
if num > max_prime_num and is_prime(num):
max_prime_num = num
return max_prime_num
def is_prime(num):
if num < 2:
return False
for i in range(2, int(num ** 0.5) + 1):
if num % i == 0:
return False
return True
```
首先定义一个 `max_prime` 函数,它接收一个整数列表 `nums`,并返回其中最大的质数。函数内部使用一个变量 `max_prime_num` 来记录当前找到的最大质数,初始值为1。然后遍历整个列表,如果当前数大于 `max_prime_num` 并且是质数,则将其赋值给 `max_prime_num`。最后返回 `max_prime_num`。
为了判断一个数是否为质数,我们还需要定义一个 `is_prime` 函数。它接收一个整数 `num`,并返回一个布尔值,表示 `num` 是否为质数。在函数内部,首先判断 `num` 是否小于2,如果是,则直接返回 `False`。然后从 2 到 `num` 的平方根进行遍历,如果发现一个能够整除 `num` 的数,则 `num` 不是质数,返回 `False`。如果遍历完整个区间仍然没有发现可以整除 `num` 的数,则 `num` 是质数,返回 `True`。
阅读全文