2013-10-10 3 views
-2

мне нужна процедура, которая возвращает значение кубического многочлена, то есть:Вычислительный кубический полином

Р (х) = х + ах + BX + с

Я должен быть в состоянии сделать это с помощью процедуры, которая принимает три аргумента и метод Ньютона-Рафсона, но я не понимаю, как это сделать.

(define f (cubic a b c) ...) 

Как это сделать?

+1

Обратите внимание: «Вопросы, требующие кода, должны демонстрировать минимальное понимание проблемы, которая будет решена. Включите попытки решения, почему они не работают и ожидаемые результаты». что ты уже испробовал? Что не сработало? –

+0

Метод Ньютауна полезен (но не проверен), чтобы найти корни функции. Поиск значения в любом конкретном х - это другой зверь. – WorBlux

+0

Вы неправильно поняли проблему или решение. Нет смысла пытаться использовать Newton-Raphson для вычисления значения * полинома для данного входа. – molbdnilo

ответ

2

Ну вы хотите, чтобы функция возвращала функцию так

(define cubic 
    (lambda (a b c) ;; lambda #1 
     (lambda (x) ;; lambda #2 
     ???))) ;; x^3 a * x^2 + b * x + c 

Это называется замыкание, лямбда-2 возвращается, когда лямбда-1 называется и может запомнить и получить доступ к параметрам из Lambda # 1 призванию.

Затем

(define f (cubic a b c)) 

определяет п быть функция, принимающая в x и подключить его в лямбда-# 2 теле.

Смежные вопросы