LINUX.ORG.RU

Сообщения Wonka

 

Racket Scheme. Рекурсивное деление полиномов с остатков (через списки)

Форум — Development

Привет. Решил поработать с полиномами и списками в Racket и столкнулся с задачей деления. Попробовал реализовать и пока получается не очень. Допустим, есть 2 полинома: 2 + 3х -х^3 + x^4 и 8 - 3х + 4х^2 + x^3, 1ый полином делим на 2ой. В качестве параметра функции я указываю 2 листа (это мои коэффициенты), то есть (pa/pb(list 2 3 0 -1 1)(list 8 -3 4 1 0)), а ответом должны быть листы результат полинома и остаток, ну или все в один список. Я реализовал программу деления почленно, но это не верно, так как оно делается по другому и я не могу придумать алгоритм правильного деления с рекурсией.

(define pa/pb
  (lambda (pol1 pol2)
    (if (null? pol1)
        pol2
        (if (null? pol2)
            pol1
     (cons (/ (car pol1) (car pol2))
           (pa/pb (cdr pol1) (cdr pol2))
     )
    )
   )
  )
)

 ,

Wonka
()

RSS подписка на новые темы