输入一个数n输出n以内的素数的个数
时间: 2023-12-13 14:02:51 浏览: 121
LabView 计算整数N内所有的素数
4星 · 用户满意度95%
您好!很高兴为您提供服务。对于您的问题,以下是一个简单的Python实现:
```python
def count_primes(n):
if n < 2:
return 0
primes = [True] * (n+1)
primes[0] = primes[1] = False
for i in range(2, int(n**0.5)+1):
if primes[i]:
primes[i*i:n+1:i] = [False] * len(primes[i*i:n+1:i])
return sum(primes)
```
这个函数使用的是埃拉托斯特尼筛法,时间复杂度为O(nloglogn)。使用时,只需要传入一个正整数n即可,函数会返回小于等于n的素数个数。希望对您有所帮助!
阅读全文