Циклическим называется процесс многократного повторения некоторого участка вычислений при изменении хотя бы одной из входящих в него величин.
Математически циклический процесс выражается зависимостью
y i = f( x i ),
т.е. предписывает многократное вычисление функции yi в соответствии с изменением аргумента xi. С точки зрения цикла аргумент xi является входной, а функция yi выходной величинами (данными).
Сформулируем основные определения.
Цикл – повторяющийся участок вычисления.
Тело цикла – совокупность действий, осуществляемых в цикле.
Параметр цикла – входная величина, изменяющая своё значение от цикла к циклу.
Закон изменения параметра цикла – зависимость, связывающая текущее и предыдущее значения параметра цикла.
Условие повторения цикла – зависимость, предписывающая повторение цикла либо выход из него.
Все циклические процессы по способу определения количества повторений (N) разделяются на два класса (рис. 5.1).
Рис. 5.1. Классификация циклов по критерию «количество повторений»
Арифметическим называется циклический процесс, число повторений в котором может быть определено заранее, т.е. не зависит от результатов счёта в теле цикла.
Итерационным именуется циклический процесс, число повторений в котором зависит от результатов вычислений в теле цикла и не может быть определено заранее.
К арифметическим циклам, как правило, относятся вычисления вида yi = f( x i ), к итерационным – yi = f( yi - 1 ).
Независимо от того, к какому классу относится вычислительный процесс, каждый из них содержит обязательные элементы:
· вход в цикл (формирование начального значения параметра цикла);
· вычисления в теле цикла (расчёт текущего значения функции, формирование нового значения параметра цикла и вспомогательные операции);
· выход из цикла (проверка условия, определяющего повторение вычислений либо их прекращение).
По своему содержанию эти элементы зависят от класса и особенностей цикла, в котором используются.
Рассмотрим варианты организации циклических процессов арифметического типа.
Арифметические циклы характеризуются следующей постановкой задачи:
рассчитать текущие значения функции yi = f ( xi ) при изменении аргумента (параметра цикла) в заданном диапазоне xнxixк (1iN) по известному закону x i = j ( x i - 1 ), ( ij = j ( ij - 1 ) ).
При этом количество повторений цикла (N) может быть определено (задано) до начала вычислений.
В соответствии с видом задания (изменения) параметра цикла арифметические циклы структурируются следующим образом (рис. 5.2):
Рис. 5.2. Классификация арифметических циклов
Многократное вычисление значений функции при изменяющихся значениях аргумента называется табуляцией функции.
Результаты табуляции представляются в виде табл. 5.1.
Таблица 5.1
Аргумент
| Функция
|
xн
| yн
|
. . .
| . . .
|
xi
| yi
|
. . .
| . . .
|
xn
| yn
|
Рассмотрим методику программирования арифметических циклов при различных видах изменения аргумента.