(Обратите внимание, что как n1, так и n2 могут быть включены в массив, если они простые). Кроме того, простые числа в массиве должны быть в порядке возрастания.Учитывая два числа n1 и n2 в качестве входных данных, возвращаем массив, содержащий все простые числа между n1 и n2
public int[] getPrimes(int start,int stop){
int flag=0;
int k=0;
int arr[] =new int[stop-start];
if(start==1){
for(int i=start+1; i<=stop; i++){
flag=0;
for(int j=2; j<=i/2; j++)
{
if(i%j==0)
{
flag=1;
break;
}
}
if(flag==0){
arr[k]=i;
k++;
}
}
}
else{
for(int i=start; i<=stop; i++){
flag=0;
for(int j=2; j<=i/2; j++)
{
if(i%j==0)
{
flag=1;
break;
}
}
if(flag==0){
arr[k]=i;
k++;
if(k+1==0)
break;
}
}
}
return arr;
}
TestCase Параметры
'1' '20'
Testcase Expected Answer
{2,3,5,7,11,13,17,19}
My Answer
{2,3,5,7,11,13,17,19,0,0,0,0,0,0,0,0,0,0,0}
Ответ не может ограничить массив, любое предложение, пожалуйста? также, если можно оптимизировать мой код без использования какой-либо функции массива?
отделка все нули. – Rustam