А119б

Задача.  Вычислить бесконечную сумму с заданной точностью [latex]\varepsilon(\varepsilon >0)[/latex]. Считать, что требуемая точность достигнута, если несколько первых слагаемых и очередное слагаемое оказалось по модулю меньше, чем [latex]\varepsilon[/latex], это и все последующие слагаемые можно уже не учитывать. Вычислить:

[latex]\sum_{i=1}^{\infty}{\frac{1}{i(i+1)}}[/latex].

Тесты:

[latex]\varepsilon[/latex] s Комментарий
0.035 0.800 Пройден
0.085 0.667 Пройден
0.025 0.833 Пройден
Решение:

С помощью цикла подсчитываем сумму.

С работой программы можно ознакомиться здесь.

Related Images:

3 thoughts on “А119б

  1. Что будет, если eps > 0.5? Думаю, тут лучше подойдет оператор do{ }while( );

    А правда, что нужно выходить сразу как только очередное слагаемое меньше eps? Вроде в условии про несколько написано.

  2. Дополню Олега… Довольно интересный цикл у Вас получился… А описан всего фразой «С помощью цикла подсчитываем сумму.» — которая не говорит почти ничего. Да и строчку double a=0.5; нужно пояснить — ведь она не будет очевидна человеку, который подобные задачи не решал.
    Кроме того, вы, на удивление, выбираете только довольно плохую точность (лучшая точность в Ваших тестах достигается при eps=0.025). Добавьте, пожалуйста, тест с меньшим значением eps.

    А условие этой задачи из Абрамова действительно странное какое-то и фразу «если несколько первых слагаемых и очередное слагаемое оказалось по модулю меньше, чем \varepsilon, это и все последующие слагаемые можно уже не учитывать. » до конца понять я не могу, хотя общий замысел задачи конечно понятен. «несколько первых слагаемых» — к чему относится, они что должны быть «по модулю меньше, чем \varepsilon»?

  3. Учитывая вышеприведенные недостатки (плюс неаккуратные отступы) и то, что, по сути, задача сделана выставляю 5 баллов (исходя из максимума в 8 баллов за октябрьскую задачу в ноябре).

Добавить комментарий