输入正整数m和 k,输出从m开始的k个素数(结果用逗号分隔)。
时间: 2024-10-26 21:03:08 浏览: 37
要编写一个程序,用于生成从给定正整数m开始的k个素数,你可以使用以下步骤:
1. 定义一个辅助函数`isPrime()`检查一个数是否为素数。
2. 创建一个循环,从m开始,直到找到k个素数或达到某个大数值。
3. 对每个数字进行素数判断,如果是素数,则添加到结果列表中,并减小k。
4. 当k值为0时,跳出循环。
下面是C++代码实现:
```cpp
#include <iostream>
#include <vector>
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;
}
// 主函数,生成并打印k个素数
void generateKPrimes(int m, int k) {
vector<int> primes;
int current = m;
while (primes.size() < k) {
if (isPrime(current))
primes.push_back(current);
current++;
}
// 输出结果,用逗号分隔
cout << primes[0];
for (size_t i = 1; i < primes.size(); i++) {
cout << ", " << primes[i];
}
cout << endl;
}
int main() {
int m, k;
cin >> m >> k;
generateKPrimes(m, k);
return 0;
}
```
阅读全文