gpt4 book ai didi

java - 如何找到二维数组的行数和列数来存储 0 到 1000 之间的素数

转载 作者:行者123 更新时间:2023-12-02 09:07:00 25 4
gpt4 key购买 nike

Take a range of 0 - 1000 Numbers and find the Prime numbers in that range. Store the prime numbers in a 2D Array, the first dimension represents the range 0-100, 100-200, and so on. While the second dimension represents the prime numbers in that range...

要存储在二维数组中,我们需要知道行数和列数..有人可以帮助我吗?...findPrimNumbers 方法返回整数 []...但我必须将素数存储在二维数组中整数数组。这是我写的代码。

 public class PrimeNmbers2D 
{
public static boolean isPrime(int number)
{
boolean status=true;
for(int n=0;n<=number;n++)
{
int count=0;
for(int i=1;i<=number;i++)
{
if(n%i==0)
{
count++;
}
}
if(count==2)
{
status=true;

}

}
return status;
}
public static Integer[] findPrimeNumbers(int start,int end)
{
ArrayList<Integer> primes=new ArrayList<>();
for(int from=start;from<=end;from++)
{
if(isPrime(from))
{
primes.add(from);
}

}
return primes.toArray( new Integer[primes.size()]);
}
public static void main(String[] args)
{
int[][] primeGroups=new int[10][];
for(int i=0;i<10;i++)
{
int start=0;
int end=100;
for(int j=0;j<10;j++)
{
primeGroups[i][j]=findPrimeNumbers(start, end);

}
start=end+1;
end=end+100;
}

}
}

最佳答案

我认为你的方法 isPrimeNum() 应该返回一个 boolean 值,如果返回为 true,则将变量 num 添加到应该返回的数组中。另一件事是,这部分代码是不必要的。

ArrayList <Integer>intArr=isPrimeNum(num);
Object [] obj = intArr.toArray();
Integer[] intArray = (Integer[])obj;

您可以使用下面的代码:

Integer[] myArray = intArr.toArray(new Integer[intArr.size()]);

但是我没有完全理解你的代码的目的,如果你需要从0到1000的所有素数,为什么你需要输入?您应该有一个用 0 到 1000 之间的所有数字填充数组的方法,然后有另一个方法迭代该数组并将素数放入将返回的另一个数组中,我们将该方法称为 findPrimeNumbers()。 findPrimeNumbers 方法应该接收包含所有数字的数组,并对每个数字调用 isPrimeNum() 方法,如果为 true,则将其添加到返回数组中。

希望对您有所帮助。

关于java - 如何找到二维数组的行数和列数来存储 0 到 1000 之间的素数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59734477/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com