本题要求实现函数判断是否为素数,定义并调用函数prime(n)。 输入m个数,判断有多少个素数。 输入 第一行输入正整数m 第二行输入m个正整数 输出 计算共有几个素数
时间: 2024-02-01 21:15:16 浏览: 69
实验八 函数
以下是实现要求的 Python 代码:
```python
import math
# 判断是否为素数的函数
def is_prime(n):
if n <= 1:
return False
for i in range(2, int(math.sqrt(n))+1):
if n % i == 0:
return False
return True
# 统计有多少个素数的函数
def count_primes(nums):
count = 0
for num in nums:
if is_prime(num):
count += 1
return count
# 主程序
m = int(input())
nums = list(map(int, input().split()))
print(count_primes(nums))
```
代码说明:
首先定义了一个判断是否为素数的函数 `is_prime(n)`,使用了试除法(从 2 到根号 n 遍历每个数判断是否为因子),如果存在因子,则返回 False,否则返回 True。
接着定义了一个统计有多少个素数的函数 `count_primes(nums)`,遍历给定的数字列表,对每个数字调用 `is_prime(n)` 函数,如果是素数则计数器加 1,最后返回计数器的值。
在主程序中,首先读入输入的 m 和 m 个正整数,用 `list(map(int, input().split()))` 将输入的字符串列表转换为整型列表。然后调用 `count_primes(nums)` 函数统计素数个数并输出。
阅读全文