a007.
判斷質數
| From: [49.213.172.34] |
發表日期
:
2014-04-06 22:23
#include <stdio.h>
using namespace std;
long long int a,i,j,list[8000]={2,3,5,7,13,17,19,23},m=8;
bool cheak;
int main()
{
for(i=25;i<66000;i+=2)
{
cheak=0;
for(j=0;list[j]*list[j]<=i;j++)
if(i%list[j]==0)
{
cheak=1;
break;
}
if(cheak==0)
{
list[m]=i;
m++;
}
}
while(scanf("%d",&a)==1)
{
cheak=0;
for(j=0;list[j]*list[j]<=a;j+=2)
if(a%list[j]==0)
{
cheak=1;
break;
}
if(cheak==0)printf("質數\n");
else printf("非質數\n");
}
return 0;
}