Пример 1. Вычислить значение функции SinX по приближенной формуле
F = SinX = X - X3/3! + X5/5! - ...+(–1)2n-1X2n-1/(2n-1)!, n=1, 2, 3 ...
с погрешностью E=10-5.
Функция F здесь представляет собой сумму членов степенного ряда:
F = U1 + U2 + ... + Un
Условие окончания вычисления функции:
|F - Fслед|< E
Заметим, что |F-Fслед| = |Uслед| – очередное слагаемое. Можно сказать, что вычисления прекращают, как только получают член ряда, меньший, чем заданная абсолютная погрешность.
Обратите внимание, что вычислять слагаемые ряда непосрественно по формуле (находить степень и факториал, делить их) крайне нерационально. В этих случаях целесообразно выражать последующий член через предыдущий. Покажем, как это делается.
Пусть речь идет о слагаемом с номером n. Тогда на основании общей формулы для члена ряда это слагаемое (предыдущее) без учета знака запишется так:
.
Номер следующего слагаемого будет n+1, тогда само слагаемое запишется так:
.
Разделив последнее выражение на предыдущее, получим выражение для вычисления следующего члена ряда по известному предыдущему
.
Обратите внимание, что в этой формуле n означает номер предыдущего члена. Если считать, что n имеет начальное значение 1 и изменяется с шагом 2, то знаменатель Uследможет быть вычислен как произведение вида:
(n + 1) (n+2).
Заметим еще, что при программировании подобных задач часто вводят одну переменную для представления как предыдущего слагаемого, так и последующего.
Вначале: n=1; U=X; F=0 {U – играет роль предыдущего и следующего члена}