2.5.3. Пример: символьная алгебра
Упражнение 2.94

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

Используя 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)

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


Это упражнение еще никто не завершил. Ты будешь первым!


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

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

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

Вход