质数(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++ 代码
#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;
}
