筛选法求素数

    xiaoxiao2021-12-14  18

    #include <iostream> using namespace std ; #include <math.h> #define RANGE 1000 void main() { int sieve[RANGE+1]; int i,j; for(i=0;i<=RANGE;i++) sieve[i]=i+2; for(i=0;i<=RANGE;i++) if(sieve[i]!=0) for(j=i+1;j<=RANGE;j++) if(sieve[j]%sieve[i]==0) sieve[j]=0; for(i=0;i<=RANGE;i++) if(sieve[i]!=0) cout<<sieve[i]<<" "; } #include <iostream> using   namespace   std   ; #include <math.h> #define RANGE 200 void main() {     char sieve[RANGE+1];     int i,j,count;     for(i=0;i<=RANGE;i++)         sieve[i]=1;     sieve[0]=sieve[1]=0;     count=0;     for(i=0;i<=RANGE;i++)         if(sieve[i]==1)         {             cout<<i<<"   ";             count++;             if(count==0)                 cout<<endl;             for(j=i;j<=RANGE;j+=i)                 sieve[j]=0;         }      }
    转载请注明原文地址: https://ju.6miu.com/read-964126.html

    最新回复(0)