用c++代码写一个判断素数的函数,在主函数输入一个整数,输出是否是素数的消息。 输入格式 一个数 输出格式 如果是素数输出prime 如果不是输出not prime
时间: 2024-02-22 11:57:43 浏览: 63
好的,以下是用 C++ 编写的判断素数的函数及主函数的代码:
```c++
#include <iostream>
#include <cmath>
using namespace std;
bool isPrime(int n) {
if (n <= 1) return false;
int sqrtn = sqrt(n);
for (int i = 2; i <= sqrtn; i++) {
if (n % i == 0) {
return false;
}
}
return true;
}
int main() {
int n;
cin >> n;
if (isPrime(n)) {
cout << "prime" << endl;
} else {
cout << "not prime" << endl;
}
return 0;
}
```
该函数的思路是:若 n 小于等于 1,则返回 false;否则,从 2 到 n 的平方根 sqrtn 依次判断 i 是否能整除 n,如果能,则返回 false,否则返回 true。主函数中输入一个整数 n,如果该数是素数,则输出 prime,否则输出 not prime。
相关问题
c++写一个判断素数的函数,在主函数输入一个整数,输出是否是素数的判断
好的,以下是判断素数的C++函数代码:
```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;
}
```
在这个函数中,我们首先判断输入的数是否小于等于1,如果是,那么它不是素数,直接返回false。然后,我们从2开始,一直枚举到n的平方根,如果n能够被任意一个i整除,那么它就不是素数,返回false。如果枚举完了还没有找到能够整除的数,那么它就是素数,返回true。
在主函数中,我们首先输入一个整数n,然后调用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` 函数进行判断,输出相应的信息。
阅读全文