Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
00 Ячменев Е.Ф. - Лекции по VBA.doc
Скачиваний:
10
Добавлен:
09.11.2019
Размер:
381.44 Кб
Скачать

3.4. Оператор цикла Do … Loop

Оператор цикла организует выполнение одних и тех же инструкций (тела цикла) до тех пор пока выполняется (или, наоборот, не выполняется) какое-то условие.

Оператор Do … Loop может быть использован для описания конструкций блок-схем представленных на рис.3.

нет

да

а) Цикл с предусловием

б) Цикл с постусловием

да

нет

Рис. 3

Оператор Do … Loop имеет две формы организации цикла: с предусловием и с постусловием.

Синтаксис оператора Do  Loop с предусловием:

Do [While | Until условие]

[инструкции]

[Exit Do]

[инструкции]

Loop

Оператор Do … Loop с предусловием организует проверку условия перед каждым входом в цикл и выполнение инструкций, входящих в тело цикла до тех пор, пока условие истинно, если оно записано после ключевого слова While, или ложно, если оно записано после ключевого слова Until.

Оператор Exit Do завершает выполнение цикла и передает управление оператору, следующему за инструкцией Loop.

Синтаксис оператора Do  Loop с постусловием:

Do

[инструкции]

[Exit Do]

[инструкции]

Loop [While | Until условие]

Оператор Do … Loop с постусловием организует проверку условия после каждого выполнения тела цикла. Если условие, записанное после ключевого слова While, истинно, или условие, записанное после ключевого слова Until, ложно, то управление передается на первый оператор тела цикла, иначе выполняется оператор, следующий за инструкцией Loop.

Примеры:

' Пример - 1

' цикл с предусловием

' будет выполняться до тех пор пока Х < 5

x = 0

Do While x < 5

x = x + 1

Loop

' Пример - 2

' цикл с предусловием

' будет выполняться до тех пор пока Х не станет равным 5

x = 0

Do Until x = 5

x = x + 1

Loop

' Пример - 3

' цикл без условия

' выход из тела цикла при Х равном 5

x = 0

Do

if x = 5 then Exit Do

x = x + 1

Loop

3.5. Оператор цикла со счетчиком For … Next

Оператор For … Next позволяет циклически выполнить набор утверждений заданное количество раз.

Синтаксис:

For счетчик = нач_значение To конеч_значение [Step шаг]

[инструкции]

[Exit For]

[инструкции]

Next [счетчик]

Параметр счетчик – это числовая переменная, автоматически изменяющая свое значение на величину шаг после каждого повтора цикла. Цикл выполняется до тех пор, пока счетчик конеч _значение при положительном значении параметра шаг или до тех пор, пока счетчик конеч_значение при отрицательном значении параметра шаг. Если параметр Step шаг опущен, то по умолчанию приращение переменной-счетчика полагается равным 1.

Оператор Exit For завершает выполнение цикла и передает управление оператору, следующему за ключевым словом Next.

Примеры:

' заполнение значениями элементов одномерного массива A размером N

n = 5

For i = 1 To n

A(i) = i ^ 2

Next i

' заполнение значениями элементов двумерного массива A размером N x M

n = 5 : m = 4

For i = 1 To n

For j = 1 To m

A(i, j) = i + j

Next j

Next i