Welcome, guest! Login / Register - Why register?
Psst.. new poll here.
[email protected] webmail now available. Want one? Go here.
Cannot use outlook/hotmail/live here to register as they blocking our mail servers. #microsoftdeez
Obey the Epel!

Paste

Pasted as Plain Text by Елена ( 11 years ago )
program Project2;

{$APPTYPE CONSOLE}

uses
  SysUtils,
  Windows;

var input, output : text;
    n : byte;
    x, y : array of real;
    A, B : real;
    yy, h, al, bt, Ai, Bi, Ci, F : array of real;
    i : byte;

begin
  SetConsoleCP( 1251 );
  SetConsoleOutputCP( 1251 );
//---çàñòàâêà---//
  writeln ('Çàäàíèå ¹2');
  writeln ('Âû÷èñëåíèå òàáëèöû 2-é ïðîèçâîäíîé ôóíêöèè');
  writeln ('ñ ïîìîùüþ êóáè÷åñêèõ ñïëàéíîâ');
  writeln;
  writeln ('Âûïîëíèëà: Êóùåíêî Åëåíà');
  writeln ('Ïðîâåðèëà: Øàáóíèíà Çîÿ Àëåêñàíäðîâíà');
//---íàçíà÷åíèå ôàéëîâ---//
  assign (input, 'input.txt');
  reset (input);
  assign (output, 'output.txt');
  rewrite (output);
//---ââîä äàííûõ èç ôàéëà---//
  readln (input, n);
  if n<2 then
    begin
      write (output, 'IER 1');
      close (input);
      close (output);
      readln;
      exit;
    end;
  //âåêòîð çíà÷åíèé àðãóìåíòà//
  SetLength (x, n+1);
  read (input, x[0]);
  for i:=1 to n do
    begin
      read (input, x[i]);
      //ïðîâåðêà âõîäíûõ äàííûõ//
      if x[i]<=x[i-1] then
        begin
          write (output, 'IER 2');
          close (input);
          close (output);
          readln;
          exit;
        end;
    end;
  //âåêòîð çíà÷åíèé ôóíêöèè//
  SetLength (y, n+1);
  for i:=0 to n do
    read (input, y[i]);
  //ãðàíèöû//
  readln (input, A);
  readln (input, B);
//---ââîä çàâåðøåí---//
//---âû÷èñëåíèå øàãà---//
  SetLength (h, n);
  for i:=1 to n do
    h[i]:=x[i]-x[i-1];

//---ïîèñê êîýôôèöèåíòîâ ìàòðèöû---//
  SetLength (Ai, n+1);
  SetLength (Bi, n+1);
  SetLength (Ci, n+1);
  SetLength (F, n+1);
  Ai[0]:=0;
  Ai[n]:=0;
  Bi[0]:=0;
  Bi[n]:=0;
  F[0]:=A;
  F[n]:=B;
  ci[0]:=1;
  ci[n]:=1;
  for i:=1 to n-1 do
    begin
      ai[i]:=h[i];
      writeln (ai[i]);
      bi[i]:=h[i+1];
      writeln (bi[i]);
      ci[i]:=2*(h[i]+h[i+1]);
      writeln (ci[i]);
      writeln (y[i]);
      writeln (y[i-1]);
      writeln (y[i+1]);
      readln;
      F[i]:=3*((y[i]-y[i-1])/h[i]+(y[i+1]-y[i])/h[i+1]);
      readln;
      writeln (f[i]);
      readln;
    end;
//---ìåòîä òðåõòî÷å÷íîé ïðîãîíêè---//
  {SetLength (Al, n-1);
  SetLength (Bt, n-1);
  //---ïðÿìîé õîä---//
  al[1]:=0;
  bt[1]:=A;
  for i:=2 to n-1 do
    begin
      al[i+1]:=-bi[i]/(ci[i]+ai[i]*al[i]);
      bt[i+1]:=(-ai[i]*bt[i]+F[i])/(ci[i]+ai[i]*al[i]);
    end;
  //---îáðàòíûé õîä---//
  SetLength (yy, n+1);
  yy[0]:=A;
  yy[n]:=B;
  for i:=n-1 to 1 do
    yy[i]:=al[i+1]+yy[i+1]+bt[i+1];
//---//
  for i:=0 to n do
    write (output, x[i]:6:3, ' ');
  writeln;
  for i:=0 to n do
    write (output, yy[i]:6:3, ' ');
  writeln (output, 'IER 0');         }
  close (input);
  close (output);
  readln;
  readln;
end.

 

Revise this Paste

Your Name: Code Language: