Задачка на ряд Тейлора - Lisp

Узнай цену своей работы

Формулировка задачи:

Дано X и натуральное N. Вычислить cos(X), используя разложение в ряд Тейлора. В разложении учитывать N членов ряда.

Решение задачи: «Задачка на ряд Тейлора»

textual
Листинг программы
(defun my-cos (x m &optional (a 1.0) (s 1.0) (n 0))
  (if (zerop m) s (my-cos x (- m 1)(- (/ (* a x x) (* (+ n n 1) (+ n n 2)))) 
                                   (+ s (- (/ (* a x x) (* (+ n n 1) (+ n n 2)))))
                                   (+ n 1))))

Объяснение кода листинга программы

В данном коде реализуется функция my-cos для вычисления ряда Тейлора для косинуса.

  1. (defun my-cos (x m &optional (a 1.0) (s 1.0) (n 0)) — функция my-cos имеет три опциональных аргумента: a, s, n.
  2. (if (zerop m) s (my-cos x (- m 1)(- (/ ( a x x) ( (+ n n 1) (+ n n 2))))
  3. (my-cos x (- m 1)(- (/ ( a x x) ( (+ n n 1) (+ n n 2)))))
  4. (+ s (- (/ ( a x x) ( (+ n n 1) (+ n n 2)))))
  5. (+ n 1) — если m равно нулю, то возвращается значение s, иначе вызывается рекурсивно функция my-cos с аргументами x, (-m 1), (-(/(axx) ((+nn1) (+nn2))), (+s (-(/(axx) ((+nn1) (+nn2)))), (+n 1).

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

9   голосов , оценка 4.333 из 5
Похожие ответы