Вычисление косинуса разложением в ряд Тейлора - Lisp

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

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

И еще - Из математического анализа известно, что функция cos(x) представляется в виде ря-да Тейлора:Вложение 776825

Решение задачи: «Вычисление косинуса разложением в ряд Тейлора»

textual
Листинг программы
(defun myCos (x eps a s n)
  (if (<= (abs a) eps) s (myCos x eps (- (/ (* a x x) (* (+ n n 1) (+ n n 2)))) (+ s a) (+ n 1))))
 
==> MYCOS
 
(myCos 3.1412926535 0.000001 1 0 0)
 
==> -0.999999819971174
 
(myCos 0.5 0.000001 1 0 0)
 
==> 0.877582465277778
 
(cos 0.5)
 
==> 0.877582561890373

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

В коде представлена реализация функции myCos для вычисления косинуса числа x с помощью разложения в ряд Тейлора. Список элементов:

  1. (defun myCos (x eps a s n) — определение функции myCos
  2. (if (<= (abs a) eps) s (myCos x eps (- (/ ( a x x) ( (+ n n 1) (+ n n 2)))) (+ s a) (+ n 1)) — основная часть функции, где выполняется рекурсивный вызов и осуществляется выход из функции при достижении заданной точности
  3. (myCos 3.1412926535 0.000001 1 0 0) — вызов функции myCos с аргументами x=3.1412926535, eps=0.000001, a=1, s=0, n=0
  4. -0.999999819971174 - результат вычисления косинуса числа 3.1412926535 с точностью до пятого знака после запятой
  5. (myCos 0.5 0.000001 1 0 0) — вызов функции myCos с аргументами x=0.5, eps=0.000001, a=1, s=0, n=0
  6. 0.877582465277778 - результат вычисления косинуса числа 0.5 с точностью до пятого знака после запятой
  7. (cos 0.5) — вызов встроенной функции cos для вычисления косинуса числа 0.5
  8. 0.877582561890373 - результат вычисления косинуса числа 0.5 с точностью до пятого знака после запятой (в отличие от предыдущих результатов, где точность задавалась параметром eps)

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


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

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

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