Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
1 курс. Зима. Информатика. Ищенко. Шпоры. 4 раз....doc
Скачиваний:
1
Добавлен:
21.07.2019
Размер:
101.89 Кб
Скачать

Dim Base As Integer

Dim Power As Integer

Dim Result As Integer

Dim Count1 As Integer

Base = 4

Power = 5

Result = 1

For Count1 = 1 To Power Step 1

Result = Result*Base

Next MsgBox Base & “ возводится в степень ” & Power & “, результат = “& Result

End Sub

21. For-Next

Действие ее подобно действию For-Next, но группа операторов выполняется не заданное число раз, а до соблюдения определенного условия. В программе Proc34 инструкция While-Wend использована для выделения определенного значения из последовательности случайных чисел.

Sub Proc34_WhileWend ( )

Dim LotteryEntry As Integer

LotteryEntry = 0

While LotteryEntry <> 7

LotteryEntry = Int (10*Rnd ( ))

Beep

Wend

MsgBox “Ваше число равно “& LotteryEntry &”. Вы выиграли!!”

End Sub

22. Управляющая структура Do-Loop

Она похожа на структуру While-Wend, однако дополнительно обладает двумя важными особенностями. Во-первых, условие завершения цикла Do-Loop можно задавать не только в его начале, но и в конце. Условие в конце цикла гарантирует, что он будет выполнен хотя бы один раз. Во-вторых, условие можно сделать критерием как выполнением цикла Do-Loop, так и его завершения. Последняя возможность в цикле While-Wend также доступна – чтобы цикл выполнялся, пока не соблюдено некоторое условие, его надо указать в структуре While с логическим оператором Not.

Рассмотрим несколько простых примеров. В программе Proc34 инструкция While-Wend применялась для определения момента, когда в последовательности случайных чисел появлялась семерка. В Proc35 та же операция осуществляется циклом Do-Loop.

Sub Proc35_DownileLoop ( )

Dim LotteryEntry As Integer

LotteryEntry = 0

Do While LotteryEntry <> 7

LotteryEntry = Int (10*Rnd ( ))

Beep

Loop

MsgBox “Ваше число равно “& LotteryEntry &”. Вы выиграли!!”

End Sub

23. Управляющая структура For-Each-Next

Это самый мощный цикл VBA - For-Each-Next. Аналогичные структуры в других языках программирования встречаются очень редко. For-Еach-Next предназначена для выполнения одной и той же группы действий над каждым объектом семейства или структуры массива. Ниже приведен пример этой структуры: