女青年与西西 2017-11-17 08:32 采纳率: 0%
浏览 851

筛法求素数表,输出全是0?

import java.util.Scanner;

public class B1013_2 {                            /*求素数表第m到第n个中间的所有素数*/
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        int M = in.nextInt();
        int N = in.nextInt();
        boolean []num = new boolean[10001];
        for (int x = 1; x < 10001; x++) /* num[1] ~ num[10001] 均不是质数*/
        {
            num[x] = true; 
        }
        int []prime = new int[N+1];/*若是N,则不到27, 27越界了,所以N+1 */
        int z = 0;

        for (int i = 2; i < 10001; i++) /*把小于10000的素数都求了一遍*/
        {
            if (num[i] == true) /*是质数*/
            {
                prime[z++] = i; /*若是prime[i] = i  z是第几个质数*/
                if (z > N)
                {
                    break;
                }
                for (int j = i + i; j < 10001; j += i) /*筛掉它的所有倍数*/
                {
                    num[j] = false; /*不是质数*/
                }

                if (z >= M && z <= N)
                {
                    if ((z-M+1) % 10 > 0 && z != N)
                    {
                        System.out.print(prime[z] + " ");                           
                    }
                    else if ( z % 10 == N)
                    {
                        System.out.print(prime[z]);                     
                    }
                    else
                    {
                        System.out.print(prime[z]);
                        System.out.print("\n");                         
                    }   
                }   
            }           
        }           
        in.close();
    }       
}

令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

  • 写回答

2条回答 默认 最新

  • MissYouLoveMe 2017-11-17 09:01
    关注

    筛法求素数表,输出全是0?

    评论

报告相同问题?

悬赏问题

  • ¥15 素材场景中光线烘焙后灯光失效
  • ¥15 请教一下各位,为什么我这个没有实现模拟点击
  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 保护模式-系统加载-段寄存器