English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Учебник по основам Java

Java Управление потоком

Java Массивы

Java Ориентированность на объекты (I)

Java Ориентированность на объекты (II)

Java Ориентированность на объекты (III)

Обработка исключений Java

Java Списки (List)

Java Queue (очередь)

Java Map-сборники

Java Set-сборники

Java Ввод/вывод (I/O)

Java Reader/Writer

Другие темы Java

Java-программа для проверки простых чисел

Java полная коллекция примеров

В этой статье вы узнаете, как проверить, является ли число простым числом. Это делается с помощью циклов for и while в Java.

Простое число - это число, которое можно делить только на два числа: 1 и само себя. Таким образом, если число можно делить любым числом, кроме 1 и себя, то оно не является простым числом.

Пример 1: Программа для проверки простых чисел с использованием цикла for

public class Prime {
    public static void main(String[] args) {
        int num = 29;
        boolean flag = false;
        for(int i = 2; i <= num/2; ++i)
        {
            // условие не простого числа
            if (num % i == 0)
            {
                flag = true;
                break;
            }
        }
        if (!flag)
            System.out.println(num + " простое число");
        else
            System.out.println(num + " не простое число");
    }
}

Результат вывода

29 является простым числом

В приведенной выше программе цикл for используется для определения, является ли заданное число num простым числом.

Заметим, что мы циклимся от 2 до num / 2. Это потому, что число не может быть делено любым числом, большим чем его половина.

Внутри цикла for мы проверяем, можно ли делить число на любое число в заданном диапазоне (2...num/2).

  • Если num можно делить, flag устанавливается в true, и мы跳出 цикл. Это подтверждает, что num не является простым числом.

  • Если num не может быть делено любым числом, flag равен false, и num является простым числом.

Пример 2: Программа для проверки простых чисел с использованием цикла while

public class Prime {
    public static void main(String[] args) {
        int num = 33, i = 2;
        boolean flag = false;
        while (i <= num / 2)
        {
            // условие не простого числа
            if (num % i == 0)
            {
                flag = true;
                break;
            }
            ++i;
        }
        if (!flag)
            System.out.println(num + " простое число");
        else
            System.out.println(num + " не простое число");
    }
}

Результат вывода

33 не простое число

В上面的 программе, используйте цикл while вместо цикла for. Цикл выполняется до тех пор, пока i <= num / 2. В каждом итерации проверяется, можно ли делить num на i без остатка, и значение i увеличивается на 1.

Посетите эту страницу, чтобы узнать, какПоказать все простые числа между двумя интервалами времени.

Java полная коллекция примеров