5. Инструкции для выполнения циклов (операции повтора) Цикл

>5. Инструкции для выполнения циклов (операции повтора)  Цикл – это последовательность повторяющихся операций 5. Инструкции для выполнения циклов (операции повтора) Цикл – это последовательность повторяющихся операций В VBA имеется несколько операторов повтора. For…Next – повторяет набор инструкций заданное число раз For Each…Next – повторяет набор инструкций для каждого объекта семейства

>While…Wend  -   повторяют набор     Do While …Loop While…Wend - повторяют набор Do While …Loop - повтор инструкций, пока условие выполняется Do Until…Loop - повторяет набор инструкций, пока не начнет выполняться условие With…End With - позволяет провести несколько операций с одним объектом

>Оператор For (для)…Next (следующий)  Имеет синтаксис  For Имя переменной = Начало цикла Оператор For (для)…Next (следующий) Имеет синтаксис For Имя переменной = Начало цикла To Конец цикла Step Шаг цикла Операторы тела цикла Next

>Работает так:  Переменной цикла присваивается   начальное значение. Выполняются операторы тела цикла. Работает так: Переменной цикла присваивается начальное значение. Выполняются операторы тела цикла. Оператор Next возвращает управление оператору For. Оператор For увеличивает значение переменной цикла на шаг и проверяет условие окончания цикла. При выполнении условия происходит переход к оператору, следующему за Next. При невыполнении повторяются пп. 2 – 5.

>Пример   Вычислить Y = X3   для Х = 1, 3, Пример Вычислить Y = X3 для Х = 1, 3, 5,…,101 Решение

>…… ……

>Пример Вычислить Z = Cos x  для х = 1, 2, 3, …50 Пример Вычислить Z = Cos x для х = 1, 2, 3, …50 Решение Если шаг цикла равен единице, ключевое слово Step можно опустить

>Пример 3  Дан массив А(70). Вычислить массив В(70), каждый элемент которого равен B(I) Пример 3 Дан массив А(70). Вычислить массив В(70), каждый элемент которого равен B(I) = 0.8 *A(I) Массивы описывают в начале программы с использованием ключевого слова Dim и указанием их размерности. Для перебора всех элементов массива нужно организовать цикл.

>Решение Решение

>I = 1           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 листа ЭТ. Пример. Вычислить сумму элементов массива С(90). Результат поместить в ячейку D8 листа ЭТ.

>Вычисление  произведения  элементов массива  Алгоритм перемножения:    Записать Вычисление произведения элементов массива Алгоритм перемножения: Записать в ячейку для хранения произведения единицу; Организовать цикл по перебору элементов массива; На каждом шаге цикла домножать произведение на очередной элемент массива.

>Пример . Вычислить произведение  элементов массива D(150) Пример . Вычислить произведение элементов массива D(150)