我需要一个返回三次多项式值的过程,即:
f(x)= x 3 + ax 2 + bx + c
我应该能够通过一个带有三个参数和Newton-Raphson方法的程序来做到这一点,但我对如何做不知所措。
(define f (cubic a b c) ...)
我该怎么做?
答案 0 :(得分:2)
嗯,你希望你的函数返回一个函数,所以
(define cubic
(lambda (a b c) ;; lambda #1
(lambda (x) ;; lambda #2
???))) ;; x^3 a * x^2 + b * x + c
这称为闭包,lambda 1在调用lambda 1时返回,并且可以记住并访问lambda#1调用中的参数。
然后
(define f (cubic a b c))
将f定义为接受x
并将其插入lambda#2主体的函数。