Добавил:
bagiwow
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:9,стр43
.pas uses crt;
var i:integer;
x,y,xs,ys,h:extended;
yp,yi,ym:array[0..20]of extended;
function f(X,Y:extended):extended;
begin
f:=(4*y-x*x*sqrt(y))/x;
end;
function fprx(x,y:extended):extended;
begin
fprx:=-(4*y+x*x*sqrt(y))/(x*x);
end;
function fpry(x,y:extended):extended;
begin
fpry:=4/x-x/(2*sqrt(y));
end;
begin
clrscr;
xs:=1;
ys:=0.648;
h:=0.5;
yp[0]:=1;
yi[0]:=1;
ym[0]:=1;
write('x ',xs:2:3,' ');
{‚лў®¤ § 票© е}
for i:=1 to 4 do
begin
x:=1+i*h;
write(x:2:3,' ');
end;
writeln;
writeln('Їа®бв®© ¬Ґв®¤ ќ©«Ґа ');
write('y ',ys:2:3,' ');
for i:=1 to 4 do begin
x:=1+i*h;
y:=ys+h*f(xs,ys);
write(y:2:3,' ');
ys:=y;
yp[i]:=y;
xs:=x;
end;
writeln;
writeln('ЁбЇа ў«Ґл© ¬Ґв®¤ ќ©«Ґа ');
write('y ');
ys:=0.648;
xs:=1;
write(ys:2:3,' ');
for i:=1 to 10 do begin
x:=1+i*h;
y:=ys+(2*f(xs,ys)*h+h*h*(fprx(xs,ys)+f(xs,ys)*fpry(xs,ys)))/2;
write(y:2:3,' ');
ys:=y;
xs:=x;
yi[i]:=y;
end;
writeln;
writeln('¬®¤ЁдЁжЁа®ў л© ¬Ґв®¤ ќ©«Ґа ');
write('y ');
ys:=0.648;
xs:=1;
write(ys:2:3,' ');
for i:=1 to 10 do begin
x:=1+i*h;
y:=ys+h*f(xs+h/2,ys+h*f(xs,ys));
write(y:2:3,' ');
ys:=y;
xs:=x;
ym[i]:=y;
end;
writeln;
writeln('в®з®Ґ аҐиҐЁҐ');
write('y ');
ys:=0.648;
write(ys:2:3,' ');
for i:=1 to 10 do begin
x:=1+i*h;
y:=sqr(x)*sqr(x)*sqr(ln(5*x))/4;
write(y:2:3,' ');
end;
writeln;
writeln('¬Ё« Їа®бв®©');
write('y ');
for i:=3 to 10 do
yp[i+1]:=yp[i-3]+
(4/3)*h*(2*f(2+(i-2)*0.2,yp[i-2])-f(2+(i-1)*0.2,yp[i-1])+2*f(2+i*0.2,yp[i]));
for i:=1 to 10 do
yp[i+1]:=yp[i-1]+
h/3*(f(2+(i+1)*0.2,yp[i+1])+4*f(2+i*0.2,yp[i])+f(2+(i-1)*0.2,yp[i-1]));
for i:=0 to 10 do write(yp[i]:2:3,' ');
writeln;
writeln('¬Ё« ЁбЇа ў«Ґл©');
write('y ');
for i:=3 to 10 do
yi[i+1]:=yi[i-3]+
(4/3)*h*(2*f(2+(i-2)*0.2,yi[i-2])-f(2+(i-1)*0.2,yi[i-1])+2*f(2+i*0.2,yi[i]));
for i:=1 to 10 do
yi[i+1]:=yi[i-1]+
h/3*(f(2+(i+1)*0.2,yi[i+1])+4*f(2+i*0.2,yi[i])+f(2+(i-1)*0.2,yi[i-1]));
for i:=0 to 10 do write(yi[i]:2:3,' ');
writeln;
writeln('¬Ё« ¬®¤ЁдЁжЁа®ў л©');
write('y ');
for i:=3 to 10 do
ym[i+1]:=ym[i-3]+
(4/3)*h*(2*f(2+(i-2)*0.2,ym[i-2])-f(2+(i-1)*0.2,ym[i-1])+2*f(2+i*0.2,ym[i]));
for i:=1 to 10 do
ym[i+1]:=ym[i-1]+
h/3*(f(2+(i+1)*0.2,ym[i+1])+4*f(2+i*0.2,ym[i])+f(2+(i-1)*0.2,ym[i-1]));
for i:=1 to 10 do write(ym[i]:2:3,' ');
readln;
end.
var i:integer;
x,y,xs,ys,h:extended;
yp,yi,ym:array[0..20]of extended;
function f(X,Y:extended):extended;
begin
f:=(4*y-x*x*sqrt(y))/x;
end;
function fprx(x,y:extended):extended;
begin
fprx:=-(4*y+x*x*sqrt(y))/(x*x);
end;
function fpry(x,y:extended):extended;
begin
fpry:=4/x-x/(2*sqrt(y));
end;
begin
clrscr;
xs:=1;
ys:=0.648;
h:=0.5;
yp[0]:=1;
yi[0]:=1;
ym[0]:=1;
write('x ',xs:2:3,' ');
{‚лў®¤ § 票© е}
for i:=1 to 4 do
begin
x:=1+i*h;
write(x:2:3,' ');
end;
writeln;
writeln('Їа®бв®© ¬Ґв®¤ ќ©«Ґа ');
write('y ',ys:2:3,' ');
for i:=1 to 4 do begin
x:=1+i*h;
y:=ys+h*f(xs,ys);
write(y:2:3,' ');
ys:=y;
yp[i]:=y;
xs:=x;
end;
writeln;
writeln('ЁбЇа ў«Ґл© ¬Ґв®¤ ќ©«Ґа ');
write('y ');
ys:=0.648;
xs:=1;
write(ys:2:3,' ');
for i:=1 to 10 do begin
x:=1+i*h;
y:=ys+(2*f(xs,ys)*h+h*h*(fprx(xs,ys)+f(xs,ys)*fpry(xs,ys)))/2;
write(y:2:3,' ');
ys:=y;
xs:=x;
yi[i]:=y;
end;
writeln;
writeln('¬®¤ЁдЁжЁа®ў л© ¬Ґв®¤ ќ©«Ґа ');
write('y ');
ys:=0.648;
xs:=1;
write(ys:2:3,' ');
for i:=1 to 10 do begin
x:=1+i*h;
y:=ys+h*f(xs+h/2,ys+h*f(xs,ys));
write(y:2:3,' ');
ys:=y;
xs:=x;
ym[i]:=y;
end;
writeln;
writeln('в®з®Ґ аҐиҐЁҐ');
write('y ');
ys:=0.648;
write(ys:2:3,' ');
for i:=1 to 10 do begin
x:=1+i*h;
y:=sqr(x)*sqr(x)*sqr(ln(5*x))/4;
write(y:2:3,' ');
end;
writeln;
writeln('¬Ё« Їа®бв®©');
write('y ');
for i:=3 to 10 do
yp[i+1]:=yp[i-3]+
(4/3)*h*(2*f(2+(i-2)*0.2,yp[i-2])-f(2+(i-1)*0.2,yp[i-1])+2*f(2+i*0.2,yp[i]));
for i:=1 to 10 do
yp[i+1]:=yp[i-1]+
h/3*(f(2+(i+1)*0.2,yp[i+1])+4*f(2+i*0.2,yp[i])+f(2+(i-1)*0.2,yp[i-1]));
for i:=0 to 10 do write(yp[i]:2:3,' ');
writeln;
writeln('¬Ё« ЁбЇа ў«Ґл©');
write('y ');
for i:=3 to 10 do
yi[i+1]:=yi[i-3]+
(4/3)*h*(2*f(2+(i-2)*0.2,yi[i-2])-f(2+(i-1)*0.2,yi[i-1])+2*f(2+i*0.2,yi[i]));
for i:=1 to 10 do
yi[i+1]:=yi[i-1]+
h/3*(f(2+(i+1)*0.2,yi[i+1])+4*f(2+i*0.2,yi[i])+f(2+(i-1)*0.2,yi[i-1]));
for i:=0 to 10 do write(yi[i]:2:3,' ');
writeln;
writeln('¬Ё« ¬®¤ЁдЁжЁа®ў л©');
write('y ');
for i:=3 to 10 do
ym[i+1]:=ym[i-3]+
(4/3)*h*(2*f(2+(i-2)*0.2,ym[i-2])-f(2+(i-1)*0.2,ym[i-1])+2*f(2+i*0.2,ym[i]));
for i:=1 to 10 do
ym[i+1]:=ym[i-1]+
h/3*(f(2+(i+1)*0.2,ym[i+1])+4*f(2+i*0.2,ym[i])+f(2+(i-1)*0.2,ym[i-1]));
for i:=1 to 10 do write(ym[i]:2:3,' ');
readln;
end.
Соседние файлы в предмете Вычислительные методы