Мой босс только что сказал мне написать функцию косинуса. Будучи хорошим математическим фанатом, мой разум сразу же вызвал соответствующую серию Тейлора.
cos(x) = 1 / 0! - x^2 / 2! + x^4 / 4! - x^6 / 6! + ... + (-1)^k x^(2k) / (2k)! + ...
Тем не менее, мой босс очень разборчив. Он хотел бы иметь возможность точно указать, сколько терминов из ряда Тейлора вычислить. Можете ли вы помочь мне написать эту функцию?
Твое задание
Учитывая значение xс плавающей запятой от 0до 2 piи положительное целое число nменьше чем 100, вычислите сумму первых nчленов ряда Тейлора, приведенных выше для cos(x).
Это код-гольф , поэтому выигрывает самый короткий код. Ввод и вывод могут быть приняты любым из стандартных способов. Стандартные лазейки запрещены.
Заметки
- Входные данные могут быть приняты в любой разумной форме, если есть четкое разделение между
xиn. - Вход и выход должны быть значениями с плавающей запятой, по крайней мере, такими же точными, как вычисление формулы с использованием чисел с плавающей запятой одинарной точности IEEE с некоторым стандартным правилом округления.
- Если это имеет смысл для используемого языка, вычисления могут выполняться с использованием точных рациональных величин, но входные и выходные данные все еще должны быть в десятичной форме.
Примеры
x | n | Output
----+----+--------------
0.0 | 1 | 1.0
0.5 | 1 | 1.0
0.5 | 2 | 0.875
0.5 | 4 | 0.87758246...
0.5 | 9 | 0.87758256...
2.0 | 2 | -1.0
2.0 | 5 | -0.4158730...

nэто также больше, чем0?