Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
32
Добавлен:
09.12.2013
Размер:
3 Кб
Скачать
Program Lab2;
Uses Crt;
Const
     a=0.5;
     b=1.5;
     E0=0.0001;
Var an,bn,r,e,rest,
    Int2h,Inth,int:real;
    i:integer;
Function func(x:real):real;
begin
 func:=abs(x*ln(x)*ln(2-x));
end;
Function Smp(a,b:real):real;
begin
 Smp:=((b-a)/3)*(func(a)+4*func((a+b)/2)+func(b));
end;
Begin
 clrscr;
 an:=a;bn:=b;
 int:=0;rest:=0;i:=1;
 Writeln(' ЃҐ§ Ў ­Є®ў ­Ёп');
 Writeln('ЙНЛННННННННННННННННННЛНННННННННННННННЛНННННННННННННННЛННННННННННННННН»');
 Writeln('є є        Hi        є       Ii      є       Ei      є      Ri       є');
 Writeln('МНОННННННННННННННННННОНННННННННННННННОНННННННННННННННОННННННННННННННН№');
 repeat
  Int2h:=Smp(an,bn);
  Inth:=Smp(an,(an+bn)/2)+Smp((an+bn)/2,bn);
  r:=abs(Inth-Int2h)/15;
  if r<=e0*(bn-an)/(b-a) then
   begin
    int:=int+Inth;
    rest:=rest+r;
    Writeln('є',i,'є',abs(bn-an),' є ',inth:0:15,' є ',e0*(bn-an)/(b-a):0:15,' є ',r:0:15,' є');
    an:=bn;
    bn:=b;
    i:=i+1;
   end
  else bn:=(bn+an)/2;
 until b=an;
 Writeln('МНОННННННННННННННННННОНННННННННННННННОНННННННННННННННОННННННННННННННН№');
 Writeln('є є       b-a        є       I       є       E       є      R        є');
 Writeln('МНОННННННННННННННННННОНННННННННННННННОНННННННННННННННОННННННННННННННН№');
 Writeln('є є',(b-a):15,'   є ',int:0:15,' є ',e0:0:15,' є ',rest:0:15,' є');
 Writeln('ИНКННННННННННННННННННКНННННННННННННННКНННННННННННННННКНННННННННННННННј');
 Writeln(' „«п Їа®¤®«¦Ґ­Ёп ­ ¦¬ЁвҐ «оЎго Є« ўЁиг...');
 Readkey;
 clrscr;
 an:=a;bn:=b;e:=0;
 int:=0;rest:=0;i:=1;
 Writeln(' ‘ Ў ­Є®ў ­ЁҐ¬');
 Writeln('ЙНЛННННННННННННННННННЛНННННННННННННННЛНННННННННННННННЛННННННННННННННН»');
 Writeln('є є        Hi        є       Ii      є       Ei      є      Ri       є');
 Writeln('МНОННННННННННННННННННОНННННННННННННННОНННННННННННННННОННННННННННННННН№');
 repeat
  Int2h:=Smp(an,bn);
  Inth:=Smp(an,(an+bn)/2)+Smp((an+bn)/2,bn);
  r:=abs(Inth-Int2h)/15;
  if r<=E0*(bn-an)/(b-a)+e then
   begin
    int:=int+Inth;
    rest:=rest+r;
    Writeln('є',i,'є',abs(bn-an),' є ',Inth:0:15,' є ',e*(bn-an)/(b-a):0:15,' є ',r:0:15,' є');
    e:=e0*(bn-an)/(b-a)+e-r;
    an:=bn;
    bn:=b;
    i:=i+1;
   end
  else bn:=(bn+an)/2;
 until b=an;
 Writeln('МНОННННННННННННННННННОНННННННННННННННОНННННННННННННННОННННННННННННННН№');
 Writeln('є є       b-a        є       I       є       E       є      R        є');
 Writeln('МНОННННННННННННННННННОНННННННННННННННОНННННННННННННННОННННННННННННННН№');
 Writeln('є є',(b-a):15,'   є ',int:0:15,' є ',e:0:15,' є ',rest:0:15,' є');
 Writeln('ИНКННННННННННННННННННКНННННННННННННННКНННННННННННННННКНННННННННННННННј');
 Writeln(' „«п § ўҐа襭Ёп ­ ¦¬ЁвҐ «оЎго Є« ўЁиг...');
Readkey;

end.
Соседние файлы в папке выч методы