streek Posted April 11 Report Share Posted April 11 На парах в институте задали написать программу для вычисления синуса функции (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 More sharing options...
EdwardSt Posted April 11 Report Share Posted April 11 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) 4 Link to comment Share on other sites More sharing options...
streek Posted April 11 Author Report Share Posted April 11 Спасибо огромное! Link to comment Share on other sites More sharing options...
Recommended Posts