c++验证一个数是否是质数
时间: 2024-10-23 17:21:35 浏览: 14
在 C++ 中,验证一个数是否为质数通常通过试除法来实现,即检查这个数是否能被2到它的平方根之间的任意整数整除。如果都不能整除,则它是质数。下面是一个简单的 C++ 函数示例:
```cpp
#include <iostream>
#include <cmath>
bool isPrime(int n) {
if (n <= 1) {
// 0和1不是质数
return false;
} else if (n == 2) {
// 2是唯一的偶数质数
return true;
} else if (n % 2 == 0) {
// 所有偶数(除了2)都不是质数
return false;
}
int sqrt_n = std::sqrt(n);
for (int i = 3; i <= sqrt_n; i += 2) { // 只需检查奇数因子
if (n % i == 0) {
return false; // 如果找到因子,说明n不是质数
}
}
return true;
}
int main() {
int num;
std::cout << "Enter a number to check if it's prime: ";
std::cin >> num;
if (isPrime(num)) {
std::cout << num << " is a prime number.\n";
} else {
std::cout << num << " is not a prime number.\n";
}
return 0;
}
```
阅读全文