Шаг 11.
Язык программирования Java.
Цикл while

На этом шаге мы рассмотрим цикл while

Цикл for используется, когда известно количество итераций. Когда количество итераций не известно используют цикл while. Его синтаксис приведен ниже:

    while (условие) {
        оператор1;
        оператор2;
        оператор3;
        ...
    }

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

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


Пример 1. Вывод всех квадратов натуральных чисел, не превосходящие 100.

 public class PrimerFirst {
    public static void main(String[] args) {
        int i = 1;
        int count = 1;
        while (i <= 100) {   /*Пока значение переменной меньше или равна 100*/
            System.out.println(i);  /*Выводим значение переменной на экран*/
            count++;  /*Увеличиваем количество квадратов на 1.*/
            i = count * count;  /*Определяем значение следующего квадрата.*/
        }
    }
}

Проект можно взять здесь.


Рис. 1. Вывод программы


Пример 2. Программа проверяет, является ли число степенью двойки.

 public class PrimerSecond {
    public static void main(String[] args) {
        int n = 1024;
        int m = 4090;

        int i = 1;
        while (i < n) { /*Пока число меньше n*/
            i *= 2; /*умножаем его на 2.*/
        }

        int j = 1;
        while (j < m) { /*Пока число меньше m*/
            j *= 2; /*умножаем его на 2.*/
        }

	/*если i = n, то выведем YES, иначе NO.*/
        System.out.println((i == n) ? "YES" : "NO");
	/*если j = m, то выведем YES, иначе NO.*/
        System.out.println((j == m) ? "YES" : "NO");
    }
}

Проект можно взять здесь.


Рис. 2. Вывод программы


Пример 3. Решим следующую задачу: Вклад в банке составляет X рублей. Ежегодно он увеличивается на P процентов, после чего дробная часть копеек отбрасывается. Требуется определить: через сколько лет вклад составит не менее Y рублей.

 public class PrimerThird {
    public static void main(String[] args) {
        int x = 10;
        int p = 15;
        int y = 1111;

        int count = 0;
        while (x < y) { /*Пока вклад меньше нужной суммы*/
            x += x * p / 100; /*Увеличиваем значение суммы на p процентов*/
            count++; /*Увеличиваем количество лет*/
        }

        System.out.println(count); /*Выводим ответ на экран*/
    }
}

Проект можно взять здесь.


Рис. 3. Вывод программы


На следующем шаге мы рассмотрим цикл do while

Предыдущий шаг Содержание Следующий шаг