Тема: Функция
Показать сообщение отдельно
  #5  
Старый 29.05.2012, 01:08
lmikle lmikle вне форума
Модератор
 
Регистрация: 17.04.2008
Сообщения: 8,100
Версия Delphi: 7, XE3, 10.2
Репутация: 49089
По умолчанию

Цитата:
Сообщение от Swd
Завтра сдавать, помогите пожалуйста

Ну что-то типа:
Код:
function F(x : Double) : Double;
begin
  // Здесь твоя функция
end;

function FindSolution(a, b, e : Double) : Double;
var
  Fa, Fb, Fc : Double;
begin
  Repeat
    Fa := F(a);
    Fb := F(b);
    Fc := F((a+b)/2);
    If Sigh(Fa) = Sign(Fc) Then a := (a+b)/2 Else b := (a+b)/2;
  Until Abs(Fc) < Abs(e);
end;

Здесь нет проверки, что решение существует. e - искомая точность. Лучше всего задавать отличной от 0, хотя и можно достаточно маленькой.
Ответить с цитированием