Java while і робити ... while Loop

У цьому підручнику ми дізнаємося, як використовувати цикл while та do while у Java за допомогою прикладів.

У комп'ютерному програмуванні цикли використовуються для повторення блоку коду. Наприклад, якщо ви хочете показати повідомлення 100 разів, тоді ви можете використовувати цикл. Це лише простий приклад; ви можете досягти набагато більше за допомогою петель.

У попередньому підручнику ви дізналися про цикл Java для. Тут ви збираєтеся дізнатись про whileі do… whileцикли.

Цикл Java while

whileЦикл Java використовується для запуску певного коду до виконання певної умови. Синтаксис whileциклу:

 while (testExpression) ( // body of loop )

Ось,

  1. whileПетля оцінює textExpression всередині дужок ().
  2. Якщо textExpression має значення true, код всередині whileциклу виконується.
  3. TextExpression оцінюється знову.
  4. Цей процес триває до тих пір textExpression поки false.
  5. Коли textExpression має значення false, цикл зупиняється.

Щоб дізнатись більше про умови, відвідайте реляційні та логічні оператори Java.

Блок-схема циклу while

Блок-схема Java while loop

Приклад 1: Відображення чисел від 1 до 5

 // Program to display numbers from 1 to 5 class Main ( public static void main(String() args) ( // declare variables int i = 1, n = 5; // while loop from 1 to 5 while(i <= n) ( System.out.println(i); i++; ) ) )

Вихідні дані

 1 2 3 4 5

Ось як працює ця програма.

Ітерація Змінна Стан: i <= n Дія
1-й i = 1
n = 5
true 1 надруковано.
i збільшено до 2 .
2-й i = 2
n = 5
true 2 надруковано.
i збільшено до 3 .
3-й i = 3
n = 5
true 3 надруковано.
i збільшено до 4 .
4-й i = 4
n = 5
true 4 надруковано.
i збільшено до 5 .
5-й i = 5
n = 5
true 5 надруковано.
i збільшено до 6 .
6-й i = 6
n = 5
false Цикл припинено

Приклад 2: Сума лише позитивних чисел

 // Java program to find the sum of positive numbers import java.util.Scanner; class Main ( public static void main(String() args) ( int sum = 0; // create an object of Scanner class Scanner input = new Scanner(System.in); // take integer input from the user System.out.println("Enter a number"); int number = input.nextInt(); // while loop continues // until entered number is positive while (number>= 0) ( // add only positive numbers sum += number; System.out.println("Enter a number"); number = input.nextInt(); ) System.out.println("Sum = " + sum); input.close(); ) )

Вихідні дані

 Введіть число 25 Введіть число 9 Введіть число 5 Введіть число -3 Сума = 39

У наведеній вище програмі ми використовували клас Scanner для отримання вхідних даних від користувача. Тут nextInt()приймає ціле число введення від користувача.

whileЦикл продовжується до тих пір , поки користувач не введе негативне число. Під час кожної ітерації до sumзмінної додається число, введене користувачем .

Коли користувач вводить від’ємне число, цикл завершується. Нарешті, відображається загальна сума.

Java do… while циклу

do… whileЦикл аналогічний циклу. Однак тіло do… whileциклу виконується один раз перед тим, як перевірити тестовий вираз. Наприклад,

 do ( // body of loop ) while(textExpression)

Ось,

  1. Спочатку виконується тіло циклу. Потім обчислюється textExpression .
  2. Якщо textExpression має значення true, тіло циклу всередині doоператора виконується знову.
  3. TextExpression оцінюється ще раз.
  4. Якщо textExpression має значення true, тіло циклу всередині doоператора виконується знову.
  5. Цей процес триває до тих пір, поки textExpression не отримає значення false. Потім цикл зупиняється.

Блок-схема циклу do… while

Блок-схема Java виконує цикл while

Подивимось, як працює do… whileцикл.

Приклад 3: Відображення чисел від 1 до 5

 // Java Program to display numbers from 1 to 5 import java.util.Scanner; // Program to find the sum of natural numbers from 1 to 100. class Main ( public static void main(String() args) ( int i = 1, n = 5; // do… while loop from 1 to 5 do ( System.out.println(i); i++; ) while(i <= n); ) )

Вихідні дані

 1 2 3 4 5

Ось як працює ця програма.

Ітерація Змінна Стан: i <= n Дія
i = 1
n = 5
не перевірено 1 надруковано.
i збільшено до 2 .
1-й i = 2
n = 5
true 2 надруковано.
i збільшено до 3 .
2-й i = 3
n = 5
true 3 надруковано.
i збільшено до 4 .
3-й i = 4
n = 5
true 4 надруковано.
i збільшено до 5 .
4-й i = 5
n = 5
true 6 надруковано.
i збільшено до 6 .
5-й i = 6
n = 5
false Цикл припинено

Приклад 4: Сума позитивних чисел

 // Java program to find the sum of positive numbers import java.util.Scanner; class Main ( public static void main(String() args) ( int sum = 0; int number = 0; // create an object of Scanner class Scanner input = new Scanner(System.in); // do… while loop continues // until entered number is positive do ( // add only positive numbers sum += number; System.out.println("Enter a number"); number = input.nextInt(); ) while(number>= 0); System.out.println("Sum = " + sum); input.close(); ) )

Вихід 1

 Введіть число 25 Введіть число 9 Введіть число 5 Введіть число -3 Сума = 39

Here, the user enters a positive number, that number is added to the sum variable. And this process continues until the number is negative. When the number is negative, the loop terminates and displays the sum without adding the negative number.

Output 2

 Enter a number -8 Sum is 0

Here, the user enters a negative number. The test condition will be false but the code inside of the loop executes once.

Infinite while loop

If the condition of a loop is always true, the loop runs for infinite times (until the memory is full). For example,

 // infinite while loop while(true)( // body of loop )

Here is an example of an infinite do… while loop.

 // infinite do… while loop int count = 1; do ( // body of loop ) while(count == 1)

In the above programs, the textExpression is always true. Hence, the loop body will run for infinite times.

for and while loops

forЦикл використовується , коли число ітерацій відомо. Наприклад,

 for (let i = 1; i <=5; ++i) ( // body of loop )

Цикли whileand та do… whileзазвичай використовуються, коли кількість ітерацій невідома. Наприклад,

 while (condition) ( // body of loop )

Цікаві статті...