java - 计算质数没有输出

标签 java arrays primes

我想打印前 100 个质数。所以,我创建了一个 int 100 数组。我添加了第一个素数 bag[0] = 2,然后对于以下数字,我尝试编写一个算法。它将从 3 开始,一直持续到数组已满。每个数字是否为素数取决于它是否可以被数组中的前一个元素整除,如果它是素数则将其添加到数组中。

这是我的代码:

public class Trial02 
{   
    public static void main( String[] args) 
    {       
        int[] bag = new int[100];
        bag[0] = 2; //first element of prime array
        int valid = 1;
        int i;
        boolean result = true;
        String str = "";

        //starting from 3 it checks if a number is prime until array is full
        for( i=3; valid<bag.length; i++)
        {
            //it checks if previous primes in array are divisible by current number until coming to current number
            for(int k=0; k<valid; k++)
            {
                if( i % bag[k] == 0)
                    result = false;
            }

            if( result == true) //if it is prime it is added to array
            {
                bag[valid] = i;
                valid ++;
            }
        }

        //printing results
        for(int m=0; m < bag.length; m++)
            str = str + bag[m] + " ";
        System.out.println("zaa xd");
        System.out.println(str);
    }

}

但是它没有给出任何输出,只是一个空白。我找不到我的错误在哪里。 提前致谢。

最佳答案

你永远不会真正检查一个数字是否是质数(result 没有被设置在任何有用的地方)

关于java - 计算质数没有输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9335224/

相关文章:

java - JPA类之间的关系,指的是它们的接口(interface)

java - 我可以用 Java 中字符串数组中的变量命名节点吗?

javascript - 新手试图从 fastcsv 返回二维数组但返回未定义

javascript - Angular JS 用户配置文件网格

python - 为什么我的阿特金筛法忽略了接近指定限制的数字?

algorithm - 我有一个新算法可以在线性时间内找到因子或素数——需要对此进行验证

java - java中的基本语言结构是什么?

java - 实例化一个包含注释的类

java - 强制不变性

python - 素数与 python