Обобщенная операция

Используя div-terms , напишите процедуру remainder-terms , и с ее помощью определите gcd-terms , как показано выше. Напишите теперь процедуру gcd-polys , которая вычисляет НОД двух многочленов. (Процедура должна сообщать об ошибке, если входные объекты являются многочленами от разных переменных.) Установите в систему обобщенную операцию greatest-common-divisor , которая для многочленов сводится к gcd-poly , а для обыкновенных чисел к обыкновенному gcd . В качестве проверки, попробуйте ввести

(define p1 (make-polynomial 'x '((4 1) (3 -1) (2 -2) (1 2))))
(define p2 (make-polynomial 'x '((3 1) (1 -1))))
(greatest-common-divisor p1 p2)

и проверьте результат вручную.


Комментарии отсутствуют.

Необходима авторизация

Вы должны авторизоваться для создания комментария.

Вход