- •Содержание
- •Введение
- •1 Алгоритм и его свойства
- •2 Основные понятия VBA. Линейные алгоритмы
- •2.1 Элементы языка VBA
- •2.2 Типы данных VBA
- •2.3 Константы VBA
- •2.4 Переменные VBA
- •2.5 Выражения в VBA
- •2.6 Встроенные функции VBA
- •2.7 Оператор присваивания
- •3 Разветвляющиеся алгоритмы
- •3.1 Оператор IF и его формы записи
- •3.2 Типовые задачи разветвляющихся алгоритмов
- •4 Циклические алгоритмы
- •4.1 Оператор цикла For
- •Оператор цикла For Each
- •4.2 Оператор цикла Do
- •4.3 Вложенные циклы
- •5 Обработка массивов данных
- •5.1 Ввод-вывод массивов
- •Расположение данных в файле "dat.txt"
- •Расположение данных в файле "res.txt"
- •5.2 Программирование обработки одномерных массивов
- •5.3 Программирование обработки двумерных массивов
- •6.1 Лабораторная работа №1
- •6.2 Задание к расчетно-графической работе №1
- •6.3 Лабораторная работа №2
- •Обработка массивов данных на VBA
- •6.4 Задание к расчетно-графической работе №2
- •ЛИТЕРАТУРА
- •Окно проекта
- •Главное меню
- •Интеллектуальные возможности редактора кода
- •Операции сравнения
- •Конкатенация строк
- •Логические операторы VBA
- •Приоритеты выполнения операций при вычислении сложных выражений
- •Операторы пересчета
4 Циклические алгоритмы
Циклом называется часть программы, которая в процессе выполнения повторяется последовательно несколько раз. Повторяющиеся операторы принято называть телом цикла.
Одной из часто встречающихся циклических задач является задача вычисления суммы или произведения группы чисел. Накапливание суммы
m |
|
S = ∑an = a1 + a2 + a3 +... + an + an+1 +... + am |
|
n=1 |
Sn |
|
Sn+1
можно организовать в цикле таким образом, чтобы при каждом новом выполнении тела цикла к сумме добавлялось очередное слагаемое, то есть производить вычисления по рекуррентной формуле (по формуле, в которой последующее значение получается на основе предыдущего):
Sn+1 = Sn + an+1 .
Если предположить, что уже вычисленная сумма Sn первых n слагаемых (называемая частичной суммой) хранится в некоторой переменной SUM, а переменной A присвоено значение очередного слагаемого an+1, то для получения суммы Sn+1 необходимо вычислить значение выражения SUM + A. Это значение для суммирования при следующем повторении тела цикла должно снова оказаться в переменной SUM. И так как находящееся в SUM значение Sn уже больше не потребуется, то переменной SUM можно присваивать только что вычисленное значение Sn+1. Таким образом, в цикле необходимо многократно выполнять оператор
SUM = SUM + A ,
а перед каждым его выполнением присваивать переменной A значение очередного слагаемого. Начать можно, положив SUM=0, а затем
53