The most popular prime finding method aka Sieve of Eratosthenes.
#define MAX 35000 #define lim 200 bool a[MAX]; int prime[MAX]; void sieve() { int i,j; a[0]=1;a[1]=1; //1 denotes not prime for(i=3;i<=lim;i+=2) //even numbers are exclusive { if(a[i]==0) //0 denotes prime { for(j=i*i;j < MAX;j+=i) a[j]=1; } } prime[0]=2; j=1; for(i=3;i < MAX;i+=2) //even numbers are exclusive { if(a[i]==0) prime[j++]=i; } }
No comments:
Post a Comment