用C++写一个判别素数的函数,在主函数中输入一个整数,输出是否为素数的信息。
时间: 2023-11-28 15:48:27 浏览: 81
以下是用C++编写的判断素数的函数:
```
#include <iostream>
using namespace std;
bool isPrime(int n) {
if (n <= 1) {
return false;
}
for (int i = 2; i*i <= n; i++) {
if (n % i == 0) {
return false;
}
}
return true;
}
int main() {
int n;
cout << "请输入一个整数:";
cin >> n;
if (isPrime(n)) {
cout << n << " 是素数。" << endl;
} else {
cout << n << " 不是素数。" << endl;
}
return 0;
}
```
这个函数接受一个整数,然后使用一个for循环遍历从2到n的所有数字,检查是否存在除1和n本身以外的因子。如果存在,则返回false,否则返回true。在主函数中,我们输入一个整数并调用isPrime函数来判断它是否是素数。
相关问题
用c++写一个判别素数的函数,在主函数中输入一个整数,输出是否为素数的信息
以下是用C++写的判断素数的函数:
```cpp
#include <iostream>
#include <cmath>
using namespace std;
bool isPrime(int n) {
if(n <= 1) return false;
for(int i = 2; i <= sqrt(n); i++) {
if(n % i == 0) return false;
}
return true;
}
int main() {
int n;
cout << "Enter an integer: ";
cin >> n;
if(isPrime(n)) {
cout << n << " is a prime number." << endl;
} else {
cout << n << " is not a prime number." << endl;
}
return 0;
}
```
首先,定义一个 `isPrime` 函数来判断一个数是否为素数。如果这个数小于等于1,那么它不是素数,直接返回 `false`。否则,从2开始到该数的平方根之间的所有整数,逐一判断该数是否能被整除。如果能,那么它不是素数,返回 `false`。如果整个循环结束后都没有找到能整除的数,那么这个数是素数,返回 `true`。
在主函数中,先输入一个整数,然后调用 `isPrime` 函数进行判断,输出相应的信息。
用c++编写一个判别素数的函数,主函数中输入一个整数,输出是否为素数的信息。
以下是用 C 语言编写的判别素数的函数和主函数:
```c
#include <stdio.h>
int isPrime(int n) {
if (n <= 1) {
return 0;
}
for (int i = 2; i <= n / 2; i++) {
if (n % i == 0) {
return 0;
}
}
return 1;
}
int main() {
int n;
printf("请输入一个整数:");
scanf("%d", &n);
if (isPrime(n)) {
printf("%d 是素数。\n", n);
} else {
printf("%d 不是素数。\n", n);
}
return 0;
}
```
首先定义了一个名为 `isPrime` 的函数,接受一个整数参数 `n`,返回一个整数值。该函数的实现方法是:如果 `n` 小于等于 1,则返回 0;否则,从 2 开始循环到 `n` 的一半,如果 `n` 能被某个数整除,则返回 0,否则返回 1,表示 `n` 是素数。
在主函数中,先读入一个整数 `n`,然后调用 `isPrime` 函数来判断 `n` 是否是素数。如果是素数,则输出“`n` 是素数。”的信息,否则输出“`n` 不是素数。”的信息。最后返回 0,表示程序正常结束。
阅读全文