21xrx.com
2025-04-15 14:40:51 Tuesday
文章检索 我的文章 写文章
C++程序:求1到N之间所有质数之和
2023-07-05 00:27:53 深夜i     25     0
C++ 质数 求和 N 1

质数是指除了1和它本身之外没有其他因数的整数,如2, 3, 5, 7等。在计算机编程中,求素数是一项经常出现的任务。下面是一个C++程序,用于求1到N之间所有质数之和。

#include <iostream>
using namespace std;
int main() {
  int n;
  int sum = 0;
  cout << "请输入一个整数N:";
  cin >> n;
  for(int i = 2; i <= n; i++) {
    bool isPrime = true;
    for(int j = 2; j <= i/2; j++) {
      if(i % j == 0)
        isPrime = false;
        break;
      
    }
    if(isPrime) {
      sum += i;
    }
  }
  cout << "1到" << n << "之间所有质数的和为:" << sum << endl;
  return 0;
}

这个程序通过两个嵌套的for循环遍历1到N之间的所有数字。对于每个数字,内层循环判断它是否是质数。如果是质数,就将它加到总和中。最后输出求和的结果。

在内层循环中,判断一个数是否是质数的方法是通过判断它是否可以被2到它的一半之间的任意数字整除。如果可以被整除,就说明它不是质数,否则它是质数。

通过这个程序,我们可以很方便地求出1到N之间所有质数的和。当然,在实际应用中,如果需要求更大范围内的素数,我们可能需要使用更复杂的算法来提高效率。

  
  

评论区

请求出错了