Ю 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

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

 

Related Images:

А116в

Задача.

Даны натуральное число [latex]n[/latex], действительное число [latex]x[/latex]. Вычислить: [latex]\sum_{i=1}^{n}{\frac{x+cos(ix)}{2^{i}}}[/latex]

Тесты. 

n x sum Комментарий
5 2 1.65 Пройден
10 10 9.67 Пройден
5 0 0.97 Пройден

Все тесты проверены на wolframalpha.

Код.

C++

Java

 

Для решения данной задачи воспользуемся циклом for, также для упрощения вычислений (не считать [latex]2^{i}[/latex] каждый раз заново) введем переменную degree.

Для выполнения программы и проверки тестов можно воспользоваться следующей ссылкой(C++) или другой(Java).

Related Images:

А116д

Задача:

Даны натуральное число [latex]n[/latex], действительное число [latex]x[/latex]. Найти:

[latex]\prod_{k=1}^{n}(\frac{k}{k+1}-cos^k|x|)[/latex]

Тесты:

[latex]x[/latex] [latex]n[/latex] [latex]p[/latex] Комментарий
1 4 0.0212016 Пройден
-4 3 -0.0779913 Пройден
50 16 0.0782772 Пройден

Код:

Для решения данной задачи создаем цикл, счетчик [latex]k[/latex] которого не превышает заданного [latex]n[/latex].  В самом цикле вычисляем произведение [latex]p[/latex] путем домножения новых  множителей заданных формулой  [latex]\frac{k}{k+1}-cos^k|x|[/latex]  пока [latex]k[/latex] не превысит [latex]n[/latex]. Выводим произведение [latex]p [/latex].

Ссылка Ideone

Код Java

Ссылка на Ideone

Related Images: