
- •Технология программирования циклических процессов. Арифметические циклы
- •Арифметические циклы с аналитическим заданием аргумента
- •Постановка задачи
- •Формирование математической модели
- •Выбор метода решения
- •Составление алгоритма
- •Программирование задачи
- •Операторы цикла
- •Оператор цикла с предусловием
- •Правила записи и выполнения
- •Оператор цикла с постусловием
- •Структура оператора
- •Правила записи и выполнения
- •Оператор пошагового цикла for
- •Структура оператора
- •Правила записи и выполнения
- •Программа по алгоритму цикла с предусловием
- •Программа по алгоритму цикла с постусловием
- •Программа по алгоритму цикла с параметром
- •Арифметические циклы с табличным заданием аргумента
- •Постановка задачи
- •Математическая формулировка
- •Выбор метода решения
- •Составление алгоритма решения
- •Алгоритмизация структурой цикла с предусловием
- •Алгоритмизация структурой цикла с постусловием
- •Алгоритмизация структурой цикла с параметром
- •Программирование задачи
- •Программирование задачи
- •Программа по алгоритму цикла с предусловием
- •Программа по алгоритму цикла с постусловием
- •Программа по алгоритму цикла с параметром
- •Заключение
- •Вопросы для контроля
-
Технология программирования циклических процессов. Арифметические циклы
Циклический – процесс многократного повторения некоторого участка вычислений при изменении хотя бы одной из входящих в него величин.
Математически циклический процесс выражается зависимостью
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нxi
xк
(1
i
N)
по известному закону x
i =
( x i - 1
), ( ij = ( ij
– 1 ) ).
При этом количество повторений цикла (N) может быть определено (задано) до начала вычислений.
В соответствии с видом задания (изменения) параметра цикла арифметические циклы классифицируются схемой (рис. 5.2):
Рис. 5.2. Классификация арифметических циклов
Табуляция функции – многократное вычисление значений функции при изменяющихся значениях аргумента.
Результаты табуляции представляются в виде табл. 5.1.
Таблица 5.1
-
Аргумент
Функция
xн
yн
. . .
. . .
xi
yi
. . .
. . .
xn
yn
Рассмотрим методику программирования арифметических циклов при различных видах изменения аргумента.