将判断当前自然数是否为素数的函数isPrimeNumber()进行封装,考虑函数的形参及类型、返回值及类型。 在main函数中调用isPrimeNumber()函数,从键盘任意键入一个自然数,通过调用该函数判断其是否为素数,并输出结果。需要至少使用分支语句和循环语句。
时间: 2024-12-18 22:22:14 浏览: 19
为了将判断当前自然数是否为素数的函数`isPrimeNumber()`进行封装,我们可以设计如下的函数原型:
```c++
#include <iostream>
using namespace std;
// 函数声明,返回值为布尔类型,表示自然数是否为素数
bool isPrimeNumber(int num);
int main() {
int input;
cout << "请输入一个自然数: ";
cin >> input; // 从用户输入获取自然数
// 使用循环语句和分支语句进行素数判断
if (input <= 1) { // 判断1和负数不是素数
cout << "输入的数字" << input << "不是素数.\n";
} else {
bool isPrime = true;
for (int i = 2; i * i <= input; i++) { // 从2开始检查到num的平方根
if (input % i == 0) { // 如果能被整除,则不是素数
isPrime = false;
break;
}
}
if (isPrime) {
cout << input << "是素数.\n";
} else {
cout << input << "不是素数.\n";
}
}
return 0;
}
```
在这个示例中:
- `isPrimeNumber()`函数接受一个`int`类型的参数`num`,并返回一个`bool`值,表示`num`是否为素数。
- 主函数首先读取用户输入的自然数,然后用一个条件分支(if...else)和一个for循环遍历,检测该数是否能被除了1和自身以外的其他整数整除,以此判断它是否为素数。
阅读全文