Какие циклы называют итерационными - Основы программирования

На каждом шаге вычислений происходит Последовательное приближение к искомому результату и проверка условия достижения последнего.

Пример. Составить алгоритм вычисления бесконечной суммы

С заданной точностью (для данной знакочередующейся бесконечной суммы требуемая точность будет достигнута, когда очередное слагаемое станет по абсолютной величине меньше ).

Вычисление сумм -- типичная циклическая задача. Особенностью же нашей конкретной задачи является то, что число слагаемых (а, следовательно, и число повторений тела цикла) заранее неизвестно. Поэтому выполнение цикла должно завершиться в момент достижения требуемой точности.

При составлении алгоритма нужно учесть, что знаки слагаемых чередуются и степень числа х в числителях слагаемых возрастает.

Решая эту задачу "в лоб" путем вычисления на каждом i-ом шаге частичной суммы

S:=S + ((-1)**(i-1)) * (x**i) / i,

Мы получим очень неэффективный алгоритм, требующий выполнения большого числа операций. Гораздо лучше организовать вычисления следующим образом: если обозначить числитель какого-либо слагаемого буквой р, то у следующего слагаемого числитель будет равен --р*х (знак минус обеспечивает чередование знаков слагаемых), а само слагаемое m будет равно p/i, где i -- номер слагаемого.

Сравните эти два подхода по числу операций.

Алгоритм на школьном АЯ

Блок-схема алгоритма

Алг Сумма (арг вещ x, Eps, рез вещ S)

Дано | 0 < x < 1

Надо | S = x - x**2/2 + x**3/3 - ...

Нач цел i, вещ m, p

Ввод x, Eps

S := 0; i := 1 | начальные значения

M := 1; p := -1

Нц пока abs(m) > Eps

P := - p*x | p - числитель

| очередного слагаемого

M := p/i | m - очередное слагаемое

S := S + m | S - частичная сумма

I := i + 1 | i - номер

| очередного слагаемого

Кц

Вывод S

Кон

Алгоритм, в состав которого входит итерационный цикл, называется Итеpационным алгоpитмом. Итерационные алгоритмы используются при реализации итерационных численных методов.

В итерационных алгоритмах необходимо обеспечить обязательное достижение условия выхода из цикла (Сходимость итерационного процесса). В противном случае произойдет "зацикливание" алгоритма, т. е. не будет выполняться основное свойство алгоритма -- Результативность.

Похожие статьи




Какие циклы называют итерационными - Основы программирования

Предыдущая | Следующая