Технический форум

Технический форум (http://www.tehnari.ru/index.php)
-   Delphi, Kylix and Pascal (http://www.tehnari.ru/forumdisplay.php?f=43)
-   -   Решить нелинейное уравнение (http://www.tehnari.ru/showthread.php?t=42524)

Sistemshik 24.11.2010 22:26

Решить нелинейное уравнение
 
Вложений: 1
Процедура нахождения отрезка, на котором нелинейное уравнение вида F (x) = 0 имеет единственный корень, базируется на следующей свойства:
*** Если функция F (x) непрерывна на де любом отрезке и монотонная, на концах этого отрезка имеет противоположные знаки, то на этом отрезке нелинейное уравнение F (x) = 0 имеет единственный корень
Решить нелинейное уравнение с точностью  = 10-4

Vladimir_S 24.11.2010 22:58

Цитата:

Сообщение от Sistemshik (Сообщение 422279)
Процедура нахождения отрезка, на котором нелинейное уравнение вида F (x) = 0 имеет единственный корень, базируется на следующей свойства:
*** Если функция F (x) непрерывна на де любом отрезке и монотонная, на концах этого отрезка имеет противоположные знаки, то на этом отрезке нелинейное уравнение F (x) = 0 имеет единственный корень
Решить нелинейное уравнение с точностью  = 10-4

Пожалуйста. Только есть одно "но". Дело в том, что преподы обожают и, соответственно, как правило, требуют от студентов для решения подобных задачек использовать метод половинного деления. Я же, на свой вкус, всегда применяю метод десятичного деления. Если устроит, то вот:
Код:

CONST
 Xbeg=1.7;
VAR
 X,DX:REAL;
 i:INTEGER;

Function F(Xf:Real):Real;
 begin
  F:=Xf*Xf-Ln(1+Xf)-3;
 end;

BEGIN
 DX:=1;
 X:=Xbeg;
 For i:=1 to 4 do
  begin
  DX:=DX/10;
  Repeat
    X:=X+DX;
  Until F(X)>0;
  X:=X-DX;
  end;
 WriteLn('X= ',X:7:5);
 ReadLn;
END.



Часовой пояс GMT +4, время: 09:47.

Powered by vBulletin® Version 4.5.3
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.