• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            洗塵齋

            三懸明鏡垂鴻韻,九撩清泉洗塵心

            常用鏈接

            統計

            最新評論

            素數算法

            今天看到一個素數的算法,利用素數集中在6x+1/6x-1的原理
            整理了一下 算法如下 打印max以下num個素數:

            http://lmlf001.blog.sohu.com/

            void print_prime(int max,int num)
            {
                    
            if(max<5)return;

                    unsigned 
            long t,m,n,p;
                    unsigned 
            long x;
                    
            int i,j,a,b,k;
                    x
            =max;

                    
            int z=0;

                    x
            =x/6;  //x>=5


                    
            for(t=x;t>=0,z<num;t--)
                    {
                            i
            =1;j=1; k=t%10;
                            m
            =6*t;                                     
            /**i,j的值 是是否進行驗證的標志也是對應的6t-1和6t+1的素性標志**/
                            
            if(((k-4)==0)||((k-9)==0)||((m+1)%3==0))j=0;
            /*此處是簡單驗證6*t-1,6*t+1 是不是素數,借以提高素數純度**/
                            
            if(((k-6)==0)||((m-1)%3==0))i=0;           
            /***先通過初步判斷去除末尾是5,及被3整除的數***/
                            
            for(p=1;p*6<=sqrt(m+1)+2;p++ )
                            {
                                    n
            =p*6;                                
            /**將6*p-1和6*p+1看作偽素數來試除*****/
                                    k
            =p%10;
                                    a
            =1;b=1;                               
            /**同樣此處a,b的值也是用來判斷除數是否為素數提高除數的素數純度**/
                                    
            if(((k-4)==0)||((k-9)==0))a=0;
                                    
            if(((k-6)==0))b=0;
                                    
            if(i){                         
            /*如果i非零就對m-1即所謂6*t-1進行驗證,當然還要看除數n+1,n-1,素性純度*/
                                            
            if(a){if((m-1)%(n+1)==0)i=0;}       /***一旦被整除就說明不是素數故素性為零即將i 賦值為零***/
                                            
            if(b){if((m-1)%(n-1)==0)i=0;}
                                    }

                                    
            if(j){                        
            /**如果j非零就對m+1即所謂6*t+1進行驗證,當然還要看除數n+1,n-1,素性純度*/
                                            
            if(a){if((m+1)%(n+1)==0)j=0;}        /***一旦被整除就說明不是素數故素性為零即將j 賦值為零***/
                                            
            if(b){if((m+1)%(n-1)==0)j=0;}
                                    }
                                    
            if((i+j)==0)break;                  
            /**如果已經知道6*t-1,6*t+1都不是素數了那就結束試除循環***/
                            }
                            
            if(j){cout<<m+1<<endl;z++;if(z>=num)break;}
                            
            if(i){cout<<m-1<<endl;z++;if(z>=num)break;}
                    }

            }

            posted on 2007-09-08 21:00 芥之舟 閱讀(877) 評論(0)  編輯 收藏 引用 所屬分類: 數據結構和算法

            亚洲欧美另类日本久久国产真实乱对白 | 1000部精品久久久久久久久| 亚洲综合伊人久久综合| 久久亚洲私人国产精品| 久久久久久久综合日本亚洲| 伊人色综合久久天天网| 久久99国产精一区二区三区| 亚洲国产精品成人AV无码久久综合影院| 中文字幕无码免费久久| 久久久久国产一级毛片高清板| 久久99热这里只有精品66| 国产99久久精品一区二区| 久久久久久精品久久久久| 狠狠狠色丁香婷婷综合久久五月 | 日韩欧美亚洲综合久久影院Ds| 午夜人妻久久久久久久久| 久久免费大片| 国产精品久久亚洲不卡动漫| 久久无码专区国产精品发布| 国产综合久久久久| 91精品婷婷国产综合久久| av无码久久久久久不卡网站| 久久最新免费视频| 精品久久久无码中文字幕| 精品久久久噜噜噜久久久 | 久久精品无码专区免费青青| 久久综合色老色| 中文字幕精品无码久久久久久3D日动漫| 国产精品99久久久久久人| 国产一级持黄大片99久久| 久久精品国产精品青草| 久久久久久无码Av成人影院 | 久久精品中文无码资源站| 一本久久a久久精品综合香蕉| 久久夜色精品国产| 亚洲精品国精品久久99热| 亚洲va久久久久| 久久久一本精品99久久精品66 | 国产精品九九久久精品女同亚洲欧美日韩综合区 | 亚洲人成网亚洲欧洲无码久久| 综合久久一区二区三区|