Олимпиадный тренинг

Задача . 4. Сумма ряда до заданной точности


Задача

Темы:

Сумма ряда с заданной точностью

Что вычисляет программа

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

Математическая модель

Общий член ряда задан формулой

an = 2n / (n − 1)!,    n ≥ 1.

Частичная сумма первых n членов:

Sn = a1 + a2 + ... + an.

Для удобного последовательного вычисления членов ряда можно использовать равенство

a1 = 2,    an+1 = an · 2 / n.

Требуется найти первый номер n, для которого

|Sn − Sn−1| < eps.

Член an, на котором это условие впервые выполнено, считается последним и входит в итоговую сумму.

Входные данные

Вводится одно вещественное число:

eps

eps — требуемая точность вычисления, 0 < eps < 1.

Выходные данные

Выведите:

n S
  • n — номер последнего учтённого члена ряда;
  • S — найденная сумма Sn.

Значение S выведите ровно с 6 знаками после точки.


Примеры
№Входные данныеВыходные данные
1
0.001
11 14.777989
2
0.01
10 14.777425
Статистика успешных решений по компиляторам
 Кол-во
Python19
Комментарий учителя