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

                                                   Рис.5 Блок-схема к процедуре kasat


 


                                                Рис.6 Блок-схема к процедуре mpd


Текст программы:

Unit FUN;

interface

  function F(x:real):real;

  function F1(x:real):real;

  function F2(x:real):real;

  function Fi(x:real):real;

  function Fi1(x:real):real;

implementation

  function F;

   begin

     F:=exp(x)-exp(-x)-2;

   end;

  function F1;

   begin

     F1:=exp(x)+exp(-x);

   end;

  function F2;

   begin

     F2:=exp(x)-exp(-x);

   end;

  function Fi;

   begin

     Fi:=ln(exp(-x)+2);

   end;

  function Fi1;

   begin

     Fi1:=-exp(-x)/(exp(-x)+2);

   end;

end.

Unit u_hord1;

interface

uses fun;

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

implementation

 procedure hordkasa;

 var x:real;

     n:integer;

 begin

   writeln;

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

   n:=0;

   repeat

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

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

     x:=(a+b)/2;

     n:=n+1;

    until abs(b-a)/2<=eps;

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

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

   writeln('n=',n);

 end;

end.

unit u_hord;

interface

uses fun;

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

implementation

 procedure hord;

 var x,x1,delta,temp:real;

     n:integer;

 begin

   writeln;

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

   begin

        temp:=a;

        a:=b;

        b:=temp;

    end;

   writeln('-----Metod Hord-----');