数素数

令Pi表示第i个素数。现任给两个正整数M <= N <= 104,请输出PM到PN的所有素数。
输入格式:
输入在一行中给出M和N,其间以空格分隔。
输出格式:
输出从PM到PN的所有素数,每10个数字占1行,其间以空格分隔,但行末不得有多余空格。
输入样例:
5 27
输出样例:
11 13 17 19 23 29 31 37 41 43
47 53 59 61 67 71 73 79 83 89
97 101 103

Demo

public class Prime {
    public static void main(String[] args) {
        int M,N;
        int count=0;
        int num=2;
        System.out.println("请输入M和N:");
        Scanner sc=new Scanner(System.in);
        M=sc.nextInt();
        N=sc.nextInt();
        int[] pr=new int[N];
        while(count<N){
            if(isPrime(num)){
                pr[count]=num;
                count++;
            }
            num++;
        }
        System.out.println("输出结果:");
        for (int i = M-1; i <pr.length ; i++) {
            if((i-(M-2))%10==0){
                System.out.print(pr[i]+"\n");
            }
            else{
                System.out.print(pr[i]+" ");
            }
        }
    }
    public static boolean isPrime(int num){
        if(num==2){
            return true;
        }
        for(int i=2; i<Math.sqrt(num)+1; i++){
            if(num%i == 0)
                return false;
        }
        return true;
    }
}

如果有更好的实现方法,大家可以分享出来,互相交流与学习!

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容