DEVC++ 13.统计素数升求和 【问题描述】输入2个正整数m 和n(1<=m =n<=50 o),统计井输出 m和n之间素数的个数以及这些素数的和。素数就是只能被1和自身整除的正整数,1不是素数,2是素数。试编写相应程序。
时间: 2024-10-28 11:15:09 浏览: 38
统计给定整数M和N区间内素数的个数并对它们求和-C语言代码
DEVC++是一个流行的C++集成开发环境,用于编写和调试C++程序。要解决这个问题,你可以编写一个C++函数来检查一个数是否为素数,然后遍历给定范围内的所有数字,统计并计算素数的数量和它们的总和。下面是一个简单的示例代码:
```cpp
#include <iostream>
using namespace std;
// 判断一个数是否为素数的辅助函数
bool isPrime(int num) {
if (num <= 1)
return false;
for (int i = 2; i * i <= num; ++i) { // 只需检查到其平方根即可
if (num % i == 0)
return false;
}
return true;
}
void countAndSumPrimes(int m, int n) {
int primeCount = 0;
long long primeSum = 0;
// 遍历从m到n的每个数字
for (int i = m; i <= n; ++i) {
if (isPrime(i)) {
primeCount++;
primeSum += i;
}
}
cout << "在 " << m << " 和 " << n << " 之间的素数个数为: " << primeCount << endl;
cout << "这些素数的和为: " << primeSum << endl;
}
int main() {
int m, n;
cout << "请输入两个正整数(m=n): ";
cin >> m >> n;
countAndSumPrimes(m, n);
return 0;
}
```
当你运行这个程序,并输入两个正整数m和n时,它会输出这两个范围内素数的数量及它们的和。
阅读全文