Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
31
Добавлен:
09.12.2013
Размер:
3 Кб
Скачать
program Max_Paxa;
uses crt;
const a=1; b=6; h=0.5;
var y,fi,Uisp,Upro,Umod,yisp,ypro,ymod:array[0..100]of real;
    i,n :integer;
    f1:  text;
function f(x,y:real):real;
begin
   f:=(4*y-x*x*sqrt(y))/x;
end;

begin
   clrscr;
   n:=round((b-a)/h);
   y[0]:=0.648;
   for i:=1 to 11 do
    begin
       y[i+1]:=sqr(a+i*h)*sqr(a+i*h)*sqr(ln(5*(a+i*h)))/4;
    end;
   Upro[0]:=4*0.648-sqrt(0.648);
   ypro[0]:=0.648;
   Umod[0]:=4*0.648-sqrt(0.648);
   ymod[0]:=0.648;
   Uisp[0]:=4*0.648-sqrt(0.648);
   yisp[0]:=0.648;
   for i:=0 to 2  do
    begin  {modif metod}
      Umod[i]:=f(a+i*h+h/2 , ymod[i]+h/2*f(a+i*h,ymod[i]));
      ymod[i+1]:=ymod[i]+h*Umod[i];
    end;
   for i:=0 to 2  do
    begin  {prostoy metod}
      Upro[i]:=f(a+i*h, ypro[i]);
      ypro[i+1]:=ypro[i]+h*Upro[i];
    end;
     for i:=0 to 2  do
    begin  {ispravl metod}
      Uisp[i]:=0.5*(f(a+i*h,yisp[i])+f(a+i*h+h , yisp[i]+h*f(a+i*h,yisp[i])));
      yisp[i+1]:=yisp[i]+h*Uisp[i];
    end;
  {ЊЁ«­}
  for i:=3 to 6 do
      begin
{1 miln}ypro[i+1]:=ypro[i-3]+4*(h/3)*(2*Upro[i-2]-Upro[i-1]+2*Upro[i]);
{(2*f(a+(i-2)*h,ymod[i-2])-f(a+(i-1)*h,ymod[i-1])+2*f(a+i*h,ymod[i]));}
        Upro[i+1]:=f(a+(i+1)*h,ypro[i+1]);
{2 miln}ypro[i+1]:=ypro[i-1]+h/3*(Upro[i+1]+4*Upro[i]+Upro[i-1]);
    end;
{for i:=3 to 6 do {prostoy miln
    begin
{1 milnypro[i+1]:=ypro[i-3]+4*h/3*(2*f(a+(i-2)*h,ypro[i-2])-f(a+(i-1)*h,ypro[i-1])+2*f(a+i*h,ypro[i]));
        Upro[i+1]:=f(a+(i+1)*h+h/2,ypro[i+1]+h/2*f(a+(i+1)*h,ypro[i+1]));
{2 milnypro[i+1]:=ypro[i-1]+h/3*(Upro[i+1]+4*f(a+i*h,ypro[i])+f(a+(i-1)*h,ypro[i-1]));
    end;
for i:=3 to 6 do {ispravl miln}
    begin
{1 miln}yisp[i+1]:=yisp[i-3]+4*h/3*(2*f(a+(i-2)*h,yisp[i-2])-f(a+(i-1)*h,yisp[i-1])+2*f(a+i*h,yisp[i]));
        Uisp[i+1]:=f(a+(i+1)*h+h/2,yisp[i+1]+h/2*f(a+(i+1)*h,yisp[i+1]));
{2 miln}yisp[i+1]:=yisp[i-1]+h/3*(Uisp[i+1]+4*f(a+i*h,yisp[i])+f(a+(i-1)*h,yisp[i-1]));
    end;

 writeln('                           ЊҐв®¤л ќ©«Ґа  ');
  writeln;
  writeln(' Ј        Џа®бв®©         €бЇа ў«.         Њ®¤ЁдЁж.           ’®з­®Ґ');
  write(' ',0 ,'       ',ypro[0]:10:7); write('      ',yisp[0]:10:7);
  write('       ',ymod[0]:10:7);writeln('          ',y[0]:10:7);
  for i:=1 to 2 do begin
  write(i:2,'       ',ypro[i]:10:7); write('      ',yisp[i]:10:7);
  write('       ',ymod[i]:10:7);writeln('          ',y[i+1]:10:7);                    end;
  writeln;
  writeln('                            ЊҐв®¤ ЊЁ«­  ');
  writeln;
  for i:=3 to 7 do
  begin
     write(i:2,' ',ypro[i]:13:3); write('     Upro',Upro[i]:13:2);
     write('      ',ymod[i]:13:3); writeln('       ', y[i]:12:7);
   end;
  readln
end.

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