题目描述
726.质数
方法1
用一个布尔标识
C++ 代码
#include<iostream>
#include<cstdio>
using namespace std;
int main(){
int n;
cin>>n;
while(n--){
int x;
cin>>x;
bool is_prime=true;
for(int i=2;i*i<=x;i++){
if(x%i==0){
is_prime=false;
break;
}
}
if(is_prime)
printf("%d is prime\n",x);
else
printf("%d is not prime\n",x);
}
return 0;
}
方法2
有一个数能把x整除,就直接break,表明不是质数。
C++ 代码
#include<iostream>
using namespace std;
int main(){
int n,x,i;
cin>>n;
while(n--){
cin>>x;
for(i=2;i<=(x/i);i++){
if(x%i==0){
cout<<x<<" is not prime\n";//不是质数
break;
}
}
if(i>(x/i)){
cout<<x<<" is prime\n";//是质数
}
}
return 0;
}