Jump to content

Проблема с функцией SIN в LISP


Recommended Posts

На парах в институте задали написать программу для вычисления синуса функции (B-X/Z)+5*(B+A-80). Всё работало до момента, пока не занёс эту вещь под SIN. Протестировал с любыми значениями, не только с функцией - всегда один и тот же ответ: "ошибка: неверное число аргументов: SIN". 
Тексты исходных программ:
1) Моя функция -

(DEFUN SIN (A B X Z)
(SIN (+ (- B (/ X Z)) (* 5 (- (+ B A) 80))))
)

 

2) Функция для проверки из методического пособия -

(DEFUN SINCOS (A)
( + (SIN A) (COS А))
)

Link to comment
Share on other sites

2 часа назад, streek сказал:

1) Моя функция -

(DEFUN SIN (A B X Z)
(SIN (+ (- B (/ X Z)) (* 5 (- (+ B A) 80))))
)

Вы переопределили функцию SIN, снабдив ее 4-мя аргументами.

Естественно, вызов функции с 1 аргументом выдаст такую ошибку.

Нужно что то типа

2 часа назад, streek сказал:

(DEFUN MY_SIN (A B X Z)
(SIN (+ (- B (/ X Z)) (* 5 (- (+ B A) 80))))
)

с соответствующим вызовом (MY_SIN 1.0 2.0 3.0 4.0)

  • Like 4
Link to comment
Share on other sites

  • streek locked this topic
Guest
This topic is now closed to further replies.
 Share

  • Tell a friend

    Love Официальный форум компании Нанософт Разработка? Tell a friend!
×
×
  • Create New...