输入一个正整数 n, 求不大于n的所有素数的和的代码
时间: 2023-05-22 07:06:44 浏览: 44
以下是代码:
```python
def sum_of_primes(n):
sieve = [True] * (n+1)
sieve[0] = sieve[1] = False
for i in range(2, int(n**0.5)+1):
if sieve[i]:
for j in range(i*i, n+1, i):
sieve[j] = False
primes = [i for i in range(n+1) if sieve[i]]
return sum(primes)
n = int(input("请输入正整数 n: "))
print("不大于n的所有素数的和为:", sum_of_primes(n))
```
希望对你有帮助。
相关问题
输入一个正整数 n, 求不大于n的所有素数的和的java代码
以下是 Java 代码:
```
import java.util.*;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int n = scanner.nextInt();
int sum = 0;
for (int i = 2; i <= n; i++) {
boolean isPrime = true;
for (int j = 2; j <= Math.sqrt(i); j++) {
if (i % j == 0) {
isPrime = false;
break;
}
}
if (isPrime) {
sum += i;
}
}
System.out.println(sum);
}
}
```
这段代码可以计算不大于n的所有素数之和。
输入一个正整数n,求不大于n的质数有多少个
输入一个正整数n,求不大于n的质数有多少个。
解法:使用筛法求解。先将2~n的数全部标记为质数,然后从2开始,将其所有的倍数标记为合数,依次类推,直到n。最后统计标记为质数的个数即可。
代码如下:
```python
def count_primes(n):
is_prime = [True] * (n+1)
cnt =
for i in range(2, n+1):
if is_prime[i]:
cnt += 1
for j in range(i*i, n+1, i):
is_prime[j] = False
return cnt
```
时间复杂度为O(nloglogn)。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![cpp](https://img-home.csdnimg.cn/images/20210720083646.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)