Лабораторна робота  №2, розв’язання нелінійних рівнянь, страница 7

   n:=0;

   repeat

     x:=a-(F(a)/((F(b)-F(a))/(b-a)));

     delta:=abs(x-a);

     a:=x;

     n:=n+1;

   until delta<eps;

   writeln('x=',x:0:3);

   writeln('F(x)=',F(x):0:5);

   writeln('n=',n);

 end;

end.

Unit u_iter;

interface

uses fun;

 procedure iter(a,b,eps:real);

implementation

 procedure iter;

 var delta,x,x0:real;

     n:integer;

 begin

   writeln;

   writeln('-----Metod Iteracii-----');

   n:=0;

   x0:=(a+b)/2;

   repeat

     x:=Fi(x0);

     delta:=abs(x0-x);

     x0:=x;

     n:=n+1;

   until delta<eps;

   writeln('x=',x:0:3);

   writeln('F(x)=',F(x):0:5);

   writeln('n=',n);

 end;

end.

Unit u_kasat;

interface

uses fun;

 procedure kasat(a,b,eps:real);

implementation

 procedure kasat;

 var x,temp:real;

     n:integer;

 begin

   writeln;

   if (F(a)*F(b)<0) then

   begin

        temp:=a;

        a:=b;

        b:=temp;

    end;

   writeln('-----Metod Kasatelnuh-----');

   n:=0;

   repeat

     x:=b-F(b)/F1(b);

     b:=x;

     n:=n+1;

   until (abs(a*b)<=eps) or (abs(F(x))<eps);

   writeln('x=',x:0:3);

   writeln('F(x)=',F(x):0:5);

   writeln('n=',n);

 end;

end.

Unit u_mpd;

interface

uses fun;

 procedure mpd(a,b,eps:real);

implementation

 procedure mpd;

 var x:real;

     n:integer;

 begin

   writeln;

   writeln('-----Metod Polovinnogo Delenija-----');

   n:=0;

   repeat

    x:=(a+b)/2;

    if F(a)*F(x)>0 then a:=x

    else b:=x;

    n:=n+1;

   until (abs(a*b)<=eps) or (abs(F(x))<eps);

   writeln('x=',x:0:3);

   writeln('F(x)=',F(x):0:5);

   writeln('n=',n);

 end;

end.

Проводился анализ функции по ее графику, для получения пределов а и b.(0 и 1)