Простые числа в интервале на Java — программа с вложенными циклами
Чтобы найти все простые числа в заданном интервале [low, high], нужно проверить на простоту каждое число в этом диапазоне.
Пример: вывод простых чисел между двумя интервалами
Внешний цикл while перебирает числа от low до high, а внутренний for проверяет каждое из них на простоту.
public class Prime {
public static void main(String[] args) {
int low = 20, high = 50;
while (low < high) {
boolean flag = false;
for(int i = 2; i <= low/2; ++i) {
// condition for nonprime number
if(low % i == 0) {
flag = true;
break;
}
}
if (!flag && low != 0 && low != 1)
System.out.print(low + " ");
++low;
}
}
}
Вывод:
23 29 31 37 41 43 47
В программе каждое число между low и high проверяется на простоту. Внутренний цикл for определяет, простое число или нет.
Важно
Главное отличие от проверки одного числа в том, что значение flag = false нужно сбрасывать на каждой итерации внешнего цикла.
Примечание
Если интервал начинается с 0 или 1, эти числа нужно исключить, так как они не являются простыми. Поэтому условие выглядит так:
if (!flag && low != 0 && low != 1)