Сумма ряда

Вычисление суммы ряда - пример использования цикла while.

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

e^{-x}=\sum_{i=0}^{\infty}(-1)^n\frac{x^n}{n!}=1-x+\frac{x^2}{2}-\frac{x^3}{2*3}+\frac{x^4}{2*3*4}+\ldots

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

|e^{-x}-\sum_{i=0}^{n}(-1)^n\frac{x^n}{n!}|<|\frac{x^n}{n!}|

Поэтому для вычисления суммы ряда можно составить следующую программу:

В этой программе есть подключение заголовочных файлов (#include)объявление переменных вещественного типа (double), ввод и вывод с клавиатуры (cin/cout), getch. Но, пожалуй, самым основным является кусок кода:

В первых трех строках этого куска кода переменным присваиваются значения. Затем начинается цикл while. Этот цикл идёт пока значение модуля члена ряда an больше погрешности эпсилон.

На каждом шаге цикла увеличивается на 1 значение n. Затем считается значение очередного члена ряда an. Стоит отметить, что используется следующее наблюдение a_n = -a_{n-1} * x / n. Вычисленное значение an приплюсовывается к сумме.

Не нашли ответ? Не беда, спросите в комментариях.

Ваш e-mail не будет опубликован. Обязательные поля помечены *