C++判别质数或合数
时间: 2024-10-24 15:10:47 浏览: 21
在C++中,判断一个数是否是质数通常通过以下步骤:
1. **定义函数**:首先,你可以创建一个名为`isPrime`的函数,接受一个整数作为输入。
```cpp
bool isPrime(int num) {
```
2. **基础条件**:对于0和1,它们不是质数,所以需要特殊处理。
```cpp
if (num <= 1)
return false;
```
3. **检查范围**:从2开始到数的平方根,因为大于这个范围的因子一定有小于它的因子。如果找到因子,说明数不是质数。
```cpp
for (int i = 2; i * i <= num; ++i) {
if (num % i == 0)
return false;
}
```
4. **返回结果**:如果没有找到因子,则数是质数。
```cpp
return true;
}
```
完整的代码示例:
```cpp
#include <iostream>
#include <cmath>
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;
}
int main() {
int input;
std::cout << "请输入一个数字:";
std::cin >> input;
if (isPrime(input))
std::cout << input << " 是质数。\n";
else
std::cout << input << " 是合数。\n";
return 0;
}
```
阅读全文