21xrx.com
2024-12-27 04:19:59 Friday
登录
文章检索 我的文章 写文章
C++程序:求1到N之间所有质数之和
2023-07-05 00:27:53 深夜i     --     --
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之间所有质数的和。当然,在实际应用中,如果需要求更大范围内的素数,我们可能需要使用更复杂的算法来提高效率。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复