Корень функции - Prolog

Узнай цену своей работы

Формулировка задачи:

Здравствуйте, помогите, пожалуйста Дать определение действительного корня функции на заданном интервале методом половинного деления

Решение задачи: «Корень функции»

textual
Листинг программы
predicates
root(real,real,real,real)
f(real,real)
 
clauses
root(A,B,Eps,R) :- abs(A-B)<Eps, R=0.5*(A+B),!.
root(A,B,Eps,R) :- f(A,FA), C=0.5*(A+B), f(C,FC), FA*FC < 0, root(A,C,Eps,R).
root(A,B,Eps,R) :- f(B,FB), C=0.5*(A+B), f(C,FC), FB*FC < 0, root(C,B,Eps,R).
 
f(X,FX) :- FX=X*X-5.
 
goal
root(0,3,0.0001,R),write(R),nl. %% печатает корень из 5

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

6   голосов , оценка 3.833 из 5