我的code
#include <iostream>
#include <math.h>
using namespace std;
int main(){
int x,a,b,c,i,data[10000];
for(c=1;c<=10000;c++){
data[c]=0;
}
i=2;
data[1]=2;
while(cin>>x){
while(x>=0){
if(x==2){
cout<<"質數"<<endl;
break;
}
for(b=1;b<i-1;b++){
if(x%data[b]==0&&x!=data[b]){
cout<<"非質數"<<endl;
b=0;
break;
}
}
for(a=3;a<=sqrt(x)+1&&b!=0;a=a+2){
if(x%a==0){
cout<<"非質數"<<endl;
break;
}
}
if(a>sqrt(x)+1&&a<=50000){
cout<<"質數"<<endl;
data[i]=x;
i++;
break;
}
break;
}
}
return 0;
}