5. Инструкции для выполнения циклов (операции повтора) Цикл – это последовательность повторяющихся операций В VBA имеется несколько операторов повтора. For…Next – повторяет набор инструкций заданное число раз For Each…Next – повторяет набор инструкций для каждого объекта семейства
While…Wend - повторяют набор Do While …Loop - повтор инструкций, пока условие выполняется Do Until…Loop - повторяет набор инструкций, пока не начнет выполняться условие With…End With - позволяет провести несколько операций с одним объектом
Оператор For (для)…Next (следующий) Имеет синтаксис For Имя переменной = Начало цикла To Конец цикла Step Шаг цикла Операторы тела цикла Next
Работает так: Переменной цикла присваивается начальное значение. Выполняются операторы тела цикла. Оператор Next возвращает управление оператору For. Оператор For увеличивает значение переменной цикла на шаг и проверяет условие окончания цикла. При выполнении условия происходит переход к оператору, следующему за Next. При невыполнении повторяются пп. 2 – 5.
Пример Вычислить Y = X3 для Х = 1, 3, 5,…,101 Решение
……
Пример Вычислить Z = Cos x для х = 1, 2, 3, …50 Решение Если шаг цикла равен единице, ключевое слово Step можно опустить
Пример 3 Дан массив А(70). Вычислить массив В(70), каждый элемент которого равен B(I) = 0.8 *A(I) Массивы описывают в начале программы с использованием ключевого слова Dim и указанием их размерности. Для перебора всех элементов массива нужно организовать цикл.
Решение
I = 1 В(1) = 0.8*А(1) I = I + 1=2 (<70) В(2) = 0.8*А(2) I = I + 1=3 (<70) В(3) = 0.8*А(3) ……………………………………….. I = I + 1=70 (=70) В(70) = 0.8*А(70) I = I + 1=71 (>70) Конец цикла
Вычисление суммы элементов массива Алгоритм суммирования: Обнулить ячейку для хранения суммы; Организовать цикл по перебору элементов массива; На каждом шаге цикла добавлять к сумме очередной элемент массива.
Пример. Вычислить сумму элементов массива С(90). Результат поместить в ячейку D8 листа ЭТ.
Вычисление произведения элементов массива Алгоритм перемножения: Записать в ячейку для хранения произведения единицу; Организовать цикл по перебору элементов массива; На каждом шаге цикла домножать произведение на очередной элемент массива.
Пример . Вычислить произведение элементов массива D(150)