Оператор циклу Do While...Loop / Do...Loop While
Ці два різновиди циклу тісно взаємозалежні, і їх часто розглядають як один з базових видів циклу. Як уже відзначалося, цикли For застосовують у тих випадках, коли кількість проходів і діапазон зміни лічильника циклу заздалегідь відомі. Цикли While призначені для ситуацій, коли кількість проходів циклу заздалегідь не відомо, але зате відома умова виходу з циклу.
Синтаксис циклу While:
Do While Умова_виходу
Група операторів
Loop
або:
Do
Група операторів
Loop While Умова_виходу
Відмінність між ними полягає в тому, що умова виходу перевіряється в одному випадку перед черговим проходом (цикл з передумовою), а в іншому випадку - після виходу (цикл з постумовою). Якщо в циклі пропустити умову виходу або ця умова завжди виконується, то отримаємо нескінченний цикл.
Наприклад такий:
Do While 2 > 1
MessageBox.Show("Вічний цикл")
Loop
Якщо у Вас випадково вийшов такий цикл, то вийти з нього можна при натисканні Ctrl+Break. Але це працює тільки в середовищі розробки.
Приклад:
Dim n As Integer
n = 100
Do While n >= 0
n = n - 1
MessageBox.Show(n)
Loop