
c++ 如何判断素数代码
判断素数的代码
bool isPrime(int num) {
if (num <= 1) {
return false;
}
for (int i = 2; i <= num / 2; i++) {
if (num % i == 0) {
return false;
}
}
return true;
}代码解释
这个代码使用一个函数 isPrime 来判断一个给定的数字是否为素数。
立即学习“C++免费学习笔记(深入)”;
-
边界条件:首先,它检查
num是否小于或等于 1,因为 1 不是素数。如果num小于或等于 1,函数返回false。 -
遍历:对于大于 1 的数字,函数从 2 开始遍历到
num / 2结束。 -
取模操作:在每个遍历中,它检查
num是否整除于i,即检查num % i是否等于 0。 -
如果取余为 0:如果
num整除于i,则表示num有一个因子除了它自身和 1,因此它不是素数。函数立即返回false。 -
遍历完成:如果遍历完成且没有找到任何因子,则表示
num除了它自身和 1 之外没有其他因子,因此它是一个素数。函数返回true。
示例用法
int main() {
int num;
cout << "输入一个数字:";
cin >> num;
if (isPrime(num)) {
cout << num << " 是一个素数。" << endl;
} else {
cout << num << " 不是一个素数。" << endl;
}
return 0;
}完整代码
#includeusing namespace std; bool isPrime(int num) { if (num <= 1) { return false; } for (int i = 2; i <= num / 2; i++) { if (num % i == 0) { return false; } } return true; } int main() { int num; cout << "输入一个数字:"; cin >> num; if (isPrime(num)) { cout << num << " 是一个素数。" << endl; } else { cout << num << " 不是一个素数。" << endl; } return 0; }











