PDF / EILER
.pdf1: program EILER; 2:
3:var
4:a,b,x0,y0:real;
5:n1,n2:integer;
7:function F(x,y:real):real;
8:begin
9:F:= -1.180 * y -3.367 * x / y +3.371 * x +2.004;
10:end;
11:
12:procedure Eiler(n:byte);
13:var i:byte;
14:h,x,y,fxy,hfxy:real; {h,x,y,f(x,y),h*f(x,y)}
15:begin
16:h:=(b-a)/n;
17:WriteLn('Число разбиений n=',n,'. Шаг h=',h:5:3);
18: |
WriteLn(' N x |
y |
f(x,y) h*f(x,y) '); |
19:WriteLn('------------------------------------');
20:x:=x0;
21:y:=y0;
22:for i:=0 to n do
23:begin
24:fxy:=f(x,y);
25:hfxy:=h*fxy;
26:WriteLn(' ',i:2,' ',x:5:2,' ',y:7:3,' ',fxy:8:3,' ',hfxy:8:3,' ');
27:y:=y+hfxy;
28:x:=x+h;
29:end;
30:WriteLn('------------------------------------');
31:ReadLn;
32:end;
33:
34:begin
35:WriteLn('-- Решение ДУ методом Эйлера --');
36:WriteLn(' интервал [a;b]');
37:Write(' a = '); ReadLn(a);
38:Write(' b = '); ReadLn(b);
39:WriteLn(' начальные условия');
40:Write(' x0 = '); ReadLn(x0);
41:Write(' y0 = '); ReadLn(y0);
42:WriteLn(' число разбиений');
43:Write(' n1 ='); ReadLn(n1);
44:Write(' n2 ='); ReadLn(n2);
45:Eiler(n1);
46:Eiler(n2);
47:end.
48:
49: