Операторы циклов
Операторы циклов используются для организации повторного выполнения блоков кода.
Оператор цикла |
Назначение |
DoWhile…Loop |
Проверить условие в начале цикла, если оно истинно, перейти к выполнению цикла и продолжать, пока условие не станет ложным |
DoUntil…Loop |
Проверить условие в начале цикла, если оно ложно, перейти к выполнению цикла и продолжать, пока условие не станет истинным |
Do…LoopWhile |
Выполнить цикл один раз, проверить условие в конце цикла и, если оно истинно, продолжать выполнять цикл, пока условие не станет ложным |
Do…LoopUntil |
Выполнить цикл один раз, проверить условие в конце цикла и, если оно ложно, продолжать выполнять цикл, пока условие не станет истинным |
For…Next |
Выполнить цикл заданное число раз, используя счетчик цикла с определенными начальными и конечными значениями, а также шагом приращения |
ForEach…Next |
Выполнить цикл по разу для каждого объекта из набора (группы) |
Операторы цикла заставляют выполняться входящие в их операторы, утверждения, функции и т.д. (тело цикла) несколько раз, в частности один раз или ни разу.Первые четыре оператора цикла (DoWhile…Loop, DoUntil…Loop, Do…LoopWhile, Do…LoopUntil) используются в тех случаях, когда заранее неизвестно количество повторений цикла. Особенность цикловDo…LoopWhileи Do…LoopUntil в том, что они выполняются хотя бы один раз.
Оператор цикла DO WHILE … LOOP (цикл с предусловием)
Значение выражения А(лог. выражение) вычисляется перед каждым выполнением оператора ST(тело цикла). Если значенияА равно True, то оператор ST выполняется и управление передается вновь на вычисление значения А, иначе оператор ST не выполняется и происходит выход из цикла.Если первоначальное значение выраженияА равно False, то оператор ST не будет выполнен ни разу.Чтобы избежать бесконечного повторения, необходимо хотя бы одну переменную, входящую в выражениеА, изменять в теле цикла. Более того, изменения должны быть таковы, чтобы булевское выражение рано или поздно обратилось в “ложь”.
ОператорциклаDOUNTIL … LOOP (цикл с предусловием)
Значение выраженияА вычисляется перед каждым выполнением оператора ST. Если значенияА равно True, то оператор ST не выполняется и происходит выход из цикла, иначе оператор STвыполняется и управление передается вновь на вычисление значения А.Если первоначальное значение выражения А равно True, то оператор ST не будет выполнен ни разу.Чтобы избежать бесконечного повторения, необходимо хотя бы одну переменную, входящую в выражениеА, изменять в теле цикла. Более того, изменения должны быть таковы, чтобы булевское выражение рано или поздно обратилось в “ложь”.