用筛选法求N以内的素数

 

package www.dxb.com;

import java.util.Scanner;

public class sushu {
    public static void main(String[] args){
        Scanner sc= new Scanner(System.in);
        int n = sc.nextInt();
        sushu2(n);
        sc.close();
    }

    private static void sushu2(int n) {
        // TODO Auto-generated method stub
        if(n<=1){
            System.out.println("wrong");
        }
        boolean [] isprems= new boolean[n+1];
        for(int i=0;i             isprems[i]=true;
        }
        for(int j=4;j<=n;j+=2){
            isprems[j]=false;
        }
        for(int j=3;j             if(isprems[j]){
                for(int i=j+j;i<=n;i=i+j){
                    isprems[i]=false;
                }
            }
        }
        for(int i=2;i             if(isprems[i]){
                System.out.println(i);
            }
        }
        
    }

}
 

你可能感兴趣的:(用筛选法求N以内的素数)