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

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

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

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

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

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

от 25%

Подписываем

договор

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

Скидка 25% при заказе до 6.4.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. і Сырт~ы к~штерді~ ішкі к~шеюмен те~естірілуі ондай ~ар~ынды к~шеюді к~штену деп атайды
3. Тема- ОБЯЗАТЕЛЬНЫЙ АУДИТ Содержание Ведение 1
4. Йорке 1883 в Петербурге 1884 в Берлине и получили преимущественное распростране
5. РЕФЕРАТ дисертації на здобуття наукового ступеня кандидата сільськогосподарських наук
6. і 5 8 Чергування у відділенні реанімації або блоці інтенсивної терапі
7.  Больная 30 лет поступила с жалобами на раздражительность повышенную утомляемость немотивированные
8.  ПРОДОЛЖИТЕЛЬНОСТЬ ЖИЗНИ В РАЗЛИЧНЫХ РЕГИОНАХ РОССИИИ
9. Количество массовых мероприятий 56 из них-
10. Валовой внутренний продукт и методы его измерения