c++求两个数之间的质数
时间: 2024-11-06 17:24:39 浏览: 6
C++如何判断一个数字是否为质数
5星 · 资源好评率100%
在 C++ 中,你可以编写一个函数来查找给定范围内的所有质数。质数是指大于1的自然数,除了1和它本身以外不再有其他正因数的数。下面是一个简单的算法示例:
```cpp
#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;
}
// 找到两个数之间所有的质数
std::vector<int> findPrimesInRange(int start, int end) {
std::vector<int> primes;
for (int i = start; i <= end; ++i) {
if (isPrime(i))
primes.push_back(i);
}
return primes;
}
int main() {
int lowerBound, upperBound;
std::cout << "请输入两个数,用于找出它们之间的质数:";
std::cin >> lowerBound >> upperBound;
std::vector<int> primeNumbers = findPrimesInRange(lowerBound, upperBound);
std::cout << "在 " << lowerBound << " 和 " << upperBound << " 之间的质数有:\n";
for (const auto& prime : primeNumbers) {
std::cout << prime << " ";
}
return 0;
}
```
在这个程序中,`isPrime()` 函数检查一个数是否是质数,`findPrimesInRange()` 函数则遍历指定范围内所有的数并找到质数,将它们存储在一个 `vector` 中。最后,主函数会读取用户输入的范围,并打印出其中的所有质数。
阅读全文