Polynomial long division: Difference between revisions

Added PicoLisp
(Added PicoLisp)
Line 794:
1x^2 + -6x + 17 , & -23x + -14 \\
\end{array}</math>
 
=={{header|PicoLisp}}==
<lang PicoLisp>(de degree (P)
(let I NIL
(for (N . C) P
(or (=0 C) (setq I N)) )
(dec I) ) )
 
(de divPoly (N D)
(if (lt0 (degree D))
(quit "Div/0" D)
(let (Q NIL Diff)
(while (ge0 (setq Diff (- (degree N) (degree D))))
(setq Q (need (- -1 Diff) Q 0))
(let E D
(do Diff (push 'E 0))
(let F (/ (get N (inc (degree N))) (get E (inc (degree E))))
(set (nth Q (inc Diff)) F)
(setq N (mapcar '((N E) (- N (* E F))) N E)) ) ) )
(list Q N) ) ) )</lang>
Output:
<pre>: (divPoly (-42 0 -12 1) (-3 1 0 0))
-> ((-27 -9 1) (-123 0 0 0))</pre>
 
=={{header|Python}}==
Anonymous user