Задачка на ряд Тейлора - 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 для вычисления ряда Тейлора для косинуса.
- (defun my-cos (x m &optional (a 1.0) (s 1.0) (n 0)) — функция my-cos имеет три опциональных аргумента: a, s, n.
- (if (zerop m) s (my-cos x (- m 1)(- (/ ( a x x) ( (+ n n 1) (+ n n 2))))
- (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) — если m равно нулю, то возвращается значение s, иначе вызывается рекурсивно функция my-cos с аргументами x, (-m 1), (-(/(axx) ((+nn1) (+nn2))), (+s (-(/(axx) ((+nn1) (+nn2)))), (+n 1).
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д