C++:给定一个整数m,判断其是否为素数
时间: 2024-10-12 20:09:23 浏览: 43
输入一个正整数,判断是不是素数(C++)
在C++中,判断一个整数m是否为素数(质数),通常会通过以下步骤来进行:
1. 首先,定义一个函数`isPrime(int m)`,它接受一个整数作为输入。
2. 素数定义为只有两个正因数(1和自身)的自然数,所以从2开始遍历到`sqrt(m)`(因为如果存在大于sqrt(m)的因子,那么必定有一个小于sqrt(m)的因子,这构成了一个平方对)。对于每个遍历到的数i,检查m是否能被i整除,若能,则m不是素数,返回false。
```cpp
#include <iostream>
#include <cmath>
bool isPrime(int m) {
if (m <= 1) { // 0和1都不是素数
return false;
}
for (int i = 2; i * i <= m; ++i) {
if (m % i == 0) { // 如果找到因子,说明m不是素数
return false;
}
}
return true; // 没有找到因子,说明m是素数
}
int main() {
int num;
std::cout << "Enter a number: ";
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;
}
```
阅读全文