Главная Случайная страница Контакты | Мы поможем в написании вашей работы! | ||
|
В VB существуют три вида операторов цикла:
счетный цикл: For…To … Next
циклы с предусловиями: Do While...Loop, Do Until...Loop, While…WEnd
циклы с постусловиями:Do...Loop While, Do...Loop Until.
Счетный цикл – позволяет циклически выполнять набор операторов заданное число раз. Его синтаксис следующий:
For счетчик = начало To конец [Step шаг ]
[ операторы ]
[Exit For]
[ операторы ]
Next [ счетчик ]
Параметр счетчик – это числовая переменная (целого, вещественного типа или типа Date, Variant, Currency), которая автоматически увеличивается после каждого повтора. Начальное значение счетчика равно параметру начало, а конечное параметру – конец. Если [Step шаг ] не указан, то шаг считается равным 1, значение шага можно изменять. Оно может быть положительным или отрицательным числом.
Существуют четыре синтаксические конструкции цикла Do….Loop:
Операторы между ключевыми словами Do … Loop выполняются заданное количество раз в зависимости от условия. Например, в следующем фрагменте программы при C = 100 условие будет выполняться и произойдет вход в цикл. Внутри цикла происходит обращение к процедуре и уменьшение значения C на 1. Далее вновь проверяется условие (C > 0) и операторы цикла выполняются повторно (всего они выполнятся 100 раз), до C = 0. Когда же условие C >0 становится ложным и цикл прекращается.
C = 100
Do While C > 0
Call MySub
C = C –1
Loop
Тот же самый фрагмент программы, выполненный с использованием цикла с предусловием по синтаксису 2:
C = 100
Do Until C = 0
Call MySub
C = C –1
Loop
В данном случае цикл выполняется, пока условие равно False, в отличие от предыдущего случая, то есть продолжается до выполнения условия C = 0.
Операторы циклов по синтаксису 3 и 4 очень похожи на первые два за исключением того, что условие не вычисляется до тех пор, пока цикл не выполнится хотя бы один раз.
В синтаксисах этих циклов можно использовать операторы безусловного выхода из цикла Exit For и Exit Do, позволяющих передать управление оператору, находящемуся за циклом. Например, в следующем фрагменте программы, если начальное значение C окажется >50, то цикл немедленно прекратиться.
Do Until C <= 0
If C>50 then
MsgBox “Нач. значение больше допустимого”, ”Ошибка ввода”
Exit Do
End If
Call MySub
C = C – 2
Loop
Цикл While…Wend использовался в ранних версиях Visual Basic. Его синтаксис следующий:
While <условие>
<Операторы>
Wend
В отличии от цикла Do..Loop цикл While..Wend не имеет второго варианта, в котором проверка условия выполняется в конце цикла. Кроме того, для него нет оператора выхода из цикла, наподобие Exit Do.
Дата публикования: 2014-12-28; Прочитано: 773 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!