质数(prime number)

判断一个数是否是质数,如果一个数n, 从2~n-1都不能整除,这个数就是质数。

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
#include <iostream>
using namespace std;
int main(){
    int n,i=2;
    cout<<"please input a number: "; 
    cin>>n;
    while (n%i!=0 && i<=n-1){
    i++;
    }
   if(i==n)
   cout<<n<<" is a prime number"<<'\n';
   else
   cout<<n<<" is not a prime number"<<'\n';
return 0;
}

优化版本,因为我们不需要找2~n-1的范围,只要找2~i*i<=n的范围就可以

判断质数的 C++ 代码

判断质数的 C++ 代码

#include <iostream>
using namespace std;

int main() {
    int n, i = 2;
    cout << "please input a number: ";
    cin >> n;

    if (n <= 1) {
        cout << n << " is not a prime number" << '\\n';
        return 0;
    }

    while (i * i <= n && n % i != 0) {
        i++;
    }

    if (i * i > n)
        cout << n << " is a prime number" << '\\n';
    else
        cout << n << " is not a prime number" << '\\n';

    return 0;
}