Скачиваний:
329
Добавлен:
04.03.2014
Размер:
1 Кб
Скачать
   program runte_kutt;
   uses crt;
    type rot=array[0..12] of real;
     const n=10;
   var k,a,b:integer;
       z1,z2,k11,k12,k21,k22,k31,k32,k41,k42,h,t:real;
       x1,x2,yan:rot;
    function f1(z1,z2,x:real):real;
     begin
      f1:=z2;
    end;
    function f2(z1,z2,x:real):real;
      begin
        f2:=Z2-5*Z1-7;
      end;
    BEGIN
      clrscr;
       textcolor(green);
        textbackground( blue);
         a:=0;b:=1;
       h:=(B-A)/n;
        x1[0]:=1;  x2[0]:=0.6;
      for k:=0 to n do
       begin
        t:=a+h*K;
         k11:=h*f1(x1[k],x2[k],t);
          k12:=h*f2(x1[k],x2[k],t);
           k21:=h*f1(x1[k]+k11/2,x2[k]+k12/2,t+h/2);
            k22:=h*f2(x1[k]+k11/2,x2[k]+k12/2,t+h/2);
             k31:=h*f1(x1[k]+k21/2,x2[k]+k22/2,t+h/2);
              k32:=h*f2(x1[k]+k21/2,x2[k]+k22/2,t+h/2);
               k41:=h*f1(x1[k]+k31,x2[k]+k32,t+h);
                k42:=h*f2(x1[k]+k31,x2[k]+k32,t+h);
         x1[k+1]:=x1[k]+1/6*(k11+2*k21+2*k31+k41);
          x2[k+1]:=x2[k]+1/6*(k12+2*k22+2*k32+k42);
        end;
     for k:=0 to n do
      begin
       t:=a+h*K;
        yan[k]:=-1*1.4*T+0.6+0.4*EXP(5*T);
      end;
       writeln('       t         x1       yan      ');
       writeln;
     for k:=0 to n do
      begin
        t:=a+h*K;
        writeln('      ',t:3:1,'   ',x1[k]:8:5,'   ',yan[k]:8:5,'    '); end;
         writeln;
                 readln;

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