Ю 3.31

 Задача: Численно убедится в справедливости равенства для заданного значения аргумента [latex]x[/latex] на заданное значение погрешности [latex]\varepsilon [/latex]. вывести число итераций.

[latex]cosx=1-\frac { { x }^{ 2 } }{ 2! } +\frac { { x }^{ 4 } }{ 4! } -\dots +{ (-1) }^{ n }\frac { { x }^{ 2n } }{ (2n)! }+\dots[/latex]
x  Delta  Value  Step’s
0    [latex]0[/latex] 0.0000001 1 1
3.14     [latex]\pi[/latex]  0.00001 -1 7
1.57    [latex]\frac { \pi }{ 2 }[/latex]  0.00001 0.000795865 5
1.05    [latex]\frac { \pi }{ 3 }[/latex]   0.00001 0.497571 4
2.09    [latex]\frac { 2\pi }{ 3 }[/latex]   0.00001 -0.496189 6

Код программы на С++

Код программы на Java

Ссылка на Java

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

 

Царев Николай Александрович
Царев Николай Александрович

Latest posts by Царев Николай Александрович (see all)

One thought on “Ю 3.31