У вас вопросы?
У нас ответы:) SamZan.net

Лабораторная работа 2 ПО ДИСЦИПЛИНЕ ИНФОРМАТИКА МЕТОД ПОЛОВИННОГО ДЕЛЕНИЯ

Работа добавлена на сайт samzan.net: 2016-06-20

Поможем написать учебную работу

Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.

Предоплата всего

от 25%

Подписываем

договор

Выберите тип работы:

Скидка 25% при заказе до 19.5.2025

БЕЛОРУССКИЙ НАЦИОНАЛЬНЫЙ ТЕХНИЧЕСКИЙ  УНИВЕРСИТЕТ

Кафедра «Тракторы»

Группа 101151

Лабораторная работа №2

ПО ДИСЦИПЛИНЕ


«ИНФОРМАТИКА»

МЕТОД ПОЛОВИННОГО ДЕЛЕНИЯ.

МЕТОД НЬЮТОНА (КАСАТЕЛЬНЫХ)

Выполнил

студент                                                                                                              Е.А.Горбёнок

        «__»________  ___

Проверил                                                                                                          Ю. Е. Атаманов

«__»________  ___

Минск 2012

unit Global;

interface

    var

a,b,xsr,fa,fxsr : real;

      Fw,Fr,Fww : TextFile;

      FIO,nGr,s : string;

 Procedure Fun(x:real; Var y:real);

 Procedure Lin(NP,NZ,n,Disk:integer;Simvol:char);

 Procedure Tab1;

 Procedure MPD(a,b:real; Var xsr:real);

 Procedure Tab2;

implementation

   Procedure MPD(a,b:real; Var xsr:real);

 Var p : real; i : integer;

 begin

   i:=1;

  repeat

   xsr:=(a+b)/2;

    Fun(a,fa);

    Fun(xsr,fxsr);

     P:=fa*fxsr;

   if (P>0) then a:=xsr

            else b:=xsr;

 writeln(Fw,'':2,i:3,xsr:13:3,fxsr:10:4);

 writeln(Fww,'':2,i:3,xsr:13:3,fxsr:10:4);

    i:=i+1;

 until (abs(fxsr)<=0.001) or (i>20);

 end;

 Procedure Fun(x:real; Var y:real);

 begin

   y:=x*x*x-7,2*x*x-x*53,83+338,67;

 end;

 Procedure Lin(NP,NZ,n,Disk:integer;Simvol:char);

    Var i : integer;

           Label 1;

   begin

            Case Disk of

       0: begin  {Печать на экран}

                 if (NP > 0) then write(' ':NP);

     for i:=1 to NZ do  write(Simvol);

      if (n>=1) then writeln; {Перевод курсора на след.строку}

                 goto 1

                 end;

       1: begin  {Печать на диск}

                 if (NP > 0) then write(Fw,' ':NP);

     for i:=1 to NZ do  write(Fw,Simvol);

      if (n>=1) then writeln(Fw); {Перевод курсора на след.строку}

                 goto 1

                 end

            end;

    1:    end;  //Lin

  Procedure Tab1;

  begin

   writeln(Fw,'':2,'Решение уравнения методом');

   writeln(Fw,'':5,'половинного деления');

   writeln(Fw);

   writeln(Fw,'':7,'Исходные данные');

   writeln(Fw,'':2,'Уравнение :',s);

   writeln(Fw,'':2,'Расчет выполнил:',FIO);

   writeln(Fw,'':2,'Группа:','':3,nGr);

   writeln(Fw);

   writeln(Fw,'':7,'Результаты расчета');

     Lin(1,30,1,1,'-');

        writeln(Fw,'':1,'Итерация :   xcp  :  f(xcp)');

     Lin(1,30,1,1,'-');

  end;

  Procedure Tab2;

  begin

    writeln(Fw);

   writeln(Fw,'':2,'Корень уравнения',xsr:10:4);

   writeln(Fw);

     Lin(1,3,0,1,'-');

   write(Fw,'':1,'*** Конец расчета ***');

     Lin(1,3,0,1,'-');

  end;

end.

unit Global;

interface

   var

      x0,x,xk,z,y,y1 : real;

      Fr,Fw,Fww : TextFile;

      FIO,nGr,s : string;

  Procedure Fun(x:real; Var z,y:real);

  Procedure Lin(NP,NZ,n,Disk:integer;Simvol:char);

  Procedure Tab1;

  Procedure NTN(x0:real; Var xk:real; Var i: integer);

  Procedure Tab2;

implementation

         Procedure NTN(x0:real; Var xk:real; Var i: integer);

 Var z,y: real;

 begin

   x:=x0;

   i:=0;

  repeat

    Fun(x,z,y);

 writeln(Fw,'':6,i:5,x:16:3,y:15:5);

 writeln(Fww,'':2,i:5,x:10:3,y:10:5);

   x:=x-z;

   xk:=x;

    i:=i+1;

 until (abs(y)<=0.01) or (i>20);

 end;

 Procedure Fun(x:real; Var z,y:real);

   Var y1: real;

 begin

   y:=x*x*x-7,2*x*x-53,83*x+338,67;

   y1:=3*x*x-14,4*x-53,83;

   z:=y/y1;

 end;

 Procedure Lin(NP,NZ,n,Disk:integer;Simvol:char);

    Var i : integer;

           Label 1;

   begin

            Case Disk of

       0: begin  {Печать на экран}

                 if (NP > 0) then write(' ':NP);

     for i:=1 to NZ do  write(Simvol);

      if (n>=1) then writeln; {Перевод курсора на след.строку}

                 goto 1

                 end;

       1: begin  {Печать на диск}

                 if (NP > 0) then write(Fw,' ':NP);

     for i:=1 to NZ do  write(Fw,Simvol);

      if (n>=1) then writeln(Fw); {Перевод курсора на след.строку}

                 goto 1

                 end

            end;

    1:    end;

  Procedure Tab1;

  begin

   writeln(Fw,'':2,'Решение уравнения методом');

   writeln(Fw,'':5,'Ньютона');

   writeln(Fw);

   writeln(Fw,'':7,'Исходные данные');

   writeln(Fw,'':2,'Уравнение :',s);

   writeln(Fw,'':2,'Расчет выполнил:',FIO);

   writeln(Fw,'':2,'Группа:','':3,nGr);

   writeln(Fw);

   writeln(Fw,'':7,'Результаты расчета');

     Lin(1,30,1,1,'-');

        writeln(Fw,'':1,'Итерация :   xk  :  f(xk)');

     Lin(1,30,1,1,'-');

  end;

  Procedure Tab2;

  begin

    writeln(Fw);

   writeln(Fw,'':2,'Корень уравнения',xk:10:4);

   writeln(Fw);

     Lin(1,3,0,1,'-');

    write(Fw,'':1,'*** Конец расчета ***');

     Lin(1,3,0,1,'-');

  end;

end.




1. Реферат- Проектное и венчурное финансирование промышленных структур
2. Углубленные экзаменационные билеты по физике и ответы (11 класс)
3. Правовые основы Древнерусского феодального государства
4. Бухгалтерская отчетность организации
5. вступить на него прейдя из другой отрасли
6. і. Економічно активне населення.
7. Муниципальная служба
8. ЭКОНОМИЧЕСКИЕ ОСНОВЫ ДЕЯТЕЛЬНОСТИ КОММЕРЧЕСКИХ БАНКОВ
9. 13 Географическое положение
10. Контрольная работа- Справочно-правовая система.html