阅读量:0
以下是一个简单的 C++ 素数生成器的设计:
#include <iostream> #include <vector> // 判断一个数是否为素数 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; } // 生成前 n 个素数 std::vector<int> generatePrimes(int n) { std::vector<int> primes; int num = 2; while (primes.size() < n) { if (isPrime(num)) { primes.push_back(num); } num++; } return primes; } int main() { int n; std::cout << "请输入要生成素数的个数:"; std::cin >> n; std::vector<int> primes = generatePrimes(n); std::cout << "前 " << n << " 个素数为:"; for (int prime : primes) { std::cout << prime << " "; } std::cout << std::endl; return 0; }
在这个设计中,首先定义了一个函数 isPrime
用来判断一个数是否为素数。然后定义了一个函数 generatePrimes
用来生成前 n 个素数,并将它们存储在一个向量中。最后在 main
函数中读取用户输入的 n,调用 generatePrimes
函数生成素数,并输出结果。