У меня есть небольшая проблема, понимающая, что мой учитель хочет, чтобы я сделал. То, что я сделал, - это код, который сохраняет мне все основные числа в массиве, которые могут отображаться. Но теперь он хочет, чтобы я «оптимизировал» код, поскольку, насколько я понимаю, попытайтесь разделить число только на числа, которые являются первичными. Например: если у меня 2,3,5, то следующее число должно быть простым, это число, которое не делится ни на одно из них. Поэтому мне не нужно пытаться 2,3,4,5, но только 2,3,5 (числа, которые у меня есть в массиве). И например: 2,3,4,5,7 - простые числа, 10 - это не потому, что он делит на 2, тогда он должен прыгать на следующий номер.Java Array сохраняет простые числа и использует его для поиска следующего простого
public static void main(String[] args) {
String introducedNumber = JOptionPane.showInputDialog("Introduce a number"); //with JOptionPane imported will ask you a small box for a number
int number, divider, numberDividing; //declaring the int's
number = Integer.parseInt(introducedNumber); //converting the input to a int
int x = 0; //starting X to 0 since its 1st array position
int[] arrayPrime = new int[number]; //declaring and creating an array
for (divider = 1; divider <= number; divider++) { //for to run till numbers
//for that checks if the number divides by any other than himself
for (numberDividing = 2; (numberDividing < divider) && (divider % numberDividing != 0); numberDividing++) {
}
if (numberDividing >= divider) {
arrayPrime[x] = divider;
x++;
}
}
for (int i = 0; i < x; i++) {
System.out.println(arrayPrime[i]);
}
}
}
Возможно, связанные с: [Решето Эратосфена] (https://en.wikipedia.org/wiki/Sieve_of_Eratosthenes) – Bohemian