Задача 22. Вычисление суммы бесконечного ряда с использованием рекуррентной формулы 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Задача 22. Вычисление суммы бесконечного ряда с использованием рекуррентной формулы



Условие задачи. Дано вещественное значение x (| x | <10). Вычислить значение суммы бесконечного ряда S = с точностью до члена ряда, по модулю меньшего, чем e =10-5.

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

При вычислении каждого слагаемого по заданной формуле требуется выполнять большое количество операций для вычисления степени и факториала. Для уменьшения затрат времени на вычисление очередного слагаемого целесообразно использовать рекуррентную формулу. Ее суть состоит в том, что каждое следующее слагаемое вычисляется через предыдущее домножением на некоторый множитель.

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

Например, для вычисления слагаемого с номером i = 10, равного , достаточно предыдущее слагаемое  домножить на , и это, безусловно, требует меньшего количества операций, чем вычисление  без использования предыдущего результата (с возведением в степень и вычислением факториала в цикле).

По рекуррентной формуле слагаемое с номером i  должно вычисляться как Ri = Ri -1 * C, где С – множитель, с использованием которого Ri вычисляется за наименьшее время. Его можно определить как . Формула для слагаемого с номером i имеет вид . Если заменить в этой формуле i на i -1, получим формулу для предыдущего слагаемого . В результате деления Ri  на Ri -1 получим . Следовательно, . Начальное слагаемое с номером, равным нулю, имеет значение R 0 =1.

Исходными данными в задаче являются вещественные значения х и e. Результатом будет значение суммы.

Алгоритм начинается с ввода значения х и задания значения e. При вводе х необходимо делать проверку с учетом заданных ограничений (| x |<10). В случае, если х не удовлетворяет указанному условию, ввод должен повторяться, возможно, даже многократно. Поэтому ввод х должен выполняться в цикле, который завершится, как только х получит требуемое значение. Далее задаются начальные значения: R присваивается значение равное единице R =1, то есть значение первого слагаемого, номеру слагаемого i =0, сумме s =0. Величина х2 является вспомогательной. Ей задается значение  из формулы множителя, чтобы не вычислять его на каждом шаге цикла, так как эта часть множителя не изменяется в зависимости от номера слагаемого i. Тогда множитель С определится формулой .

Поскольку число слагаемых заранее неизвестно, то для получения суммы используется цикл с предусловием. В теле цикла многократно повторяются действия по прибавлению уже имеющегося слагаемого к сумме s = s + R, вычислению номера следующего слагаемого i = i +1 и самого слагаемого . Цикл продолжается до тех пор, пока выполняется условие abs (R)> e. Как только оноперестаёт выполняться, повторение вышеуказанных действий прекращается, и результат выводится на экран.



Поделиться:


Последнее изменение этой страницы: 2021-04-12; просмотров: 520; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.141.8.247 (0.004 с.)