![]() КАТЕГОРИИ:
АстрономияБиологияГеографияДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРиторикаСоциологияСпортСтроительствоТехнологияФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника
|
Лекция 7. Итерационный цикл Do WhileLoop или DoLoop WhileИтерационный цикл Do While...Loop или Do...Loop While Здесь While (пока) и Loop(цикл) зарезервированные слова. Циклы типа While предназначены для ситуаций, когда количество повторений тела цикла (итераций) заранее неизвестно. Вот синтаксис двух разновидностей цикла While: Первый вариант:
Do While УсловиеПовторения Группа инструкций Loop Здесь УсловиеПовторения – это выражение логического типа (подробнее), которое принимает либо значение True, либо значение False. Выполнение этой инструкции происходит так. Сначала вычисляется значение логического выражения УсловиеПовторения. Если оно имеет значение True, то выполняются инструкции, помещенные между строками Do WhileиLoop.Затем все повторяется с начала. Если же логическое выражение имеет значение False, то происходит выход из цикла. Следующей будет выполнена инструкция, помещенная ниже строки Loop. Все это поясняет блок-схема на рис. 7.1.
Второй вариант:
Do Группа инструкций Loop While УсловиеПовторения
Перейдем к примерам. Рассмотрим действие следующего участка программы.
Пример 1
Счетчик = 0 Номер = 20 Do While Номер > 10 Номер = Номер – 1 Счетчик = Счетчик + 1 Loop MsgBox ("Выполнено " & Счетчик & " итераций цикла.")
При выполнении этого участка программы в окне функции MsgBox будет выведено:
Выполнено 10 итераций цикла.
В этой программе условие проверяется до входа в цикл. Если переменной Номер задать значение, равное 10 вместо 20, инструкции внутри цикла выполняться не будут.
Пример 2
В следующей программе инструкции внутри цикла выполняются только один раз до того, как условие не будет выполнено.
Счетчик = 0 Номер = 9 Do Номер = Номер – 1 Счетчик = Счетчик + 1 Loop While Номер > 10 MsgBox ("В цикле выполнено " & counter & " итераций.")
Инструкцию Do...Loop можно завершить досрочно с помощью инструкции Exit Do.
|