unit2.pas

来自「1、说明: 本书中所有的常用数值算法子过程按书中的章数分别放在以C开头」· PAS 代码 · 共 54 行

PAS
54
字号
unit Unit2;

interface
USES
  UNIT1;
procedure PZEXTR(IEST:integer; XEST:real; YEST:array of real;
                           var YZ, DY:array of real; NV, NUSE:integer);
                           
implementation
procedure PZEXTR(IEST:integer; XEST:real; YEST:array of real;
                           var YZ, DY:array of real; NV, NUSE:integer);
var
    D:array[0..10] of real;   J,K1,M1:integer;
    Q,DELTA,F1,F2:real;
begin
    SetLength(QCOL,11,8);
    X[IEST]:=XEST;
    For J:=1 To NV do
    begin
        DY[J]:=YEST[J];
        YZ[J]:=YEST[J];
    end; 
    If IEST = 1 Then
    begin
        For J:=1 To NV do
            QCOL[J, 1]:=YEST[J];
    end
    Else
    begin
        M1:=IEST;
        If IEST > NUSE Then M1:=NUSE;
        For J:=1 To NV do
            D[J]:=YEST[J];
        For K1:=1 To M1 - 1 do
        begin
            DELTA:=1 / (X[IEST - K1] - XEST);
            F1:=XEST * DELTA;
            F2:=X[IEST - K1] * DELTA;
            For J:=1 To NV do
            begin
                Q:=QCOL[J, K1];
                QCOL[J, K1]:=DY[J];
                DELTA:=D[J] - Q;
                DY[J]:=F1 * DELTA;
                D[J]:=F2 * DELTA;
                YZ[J]:=YZ[J] + DY[J];
            end;
        end; 
        For J:=1 To NV do
            QCOL[J, M1]:=DY[J];
    end;
end;
end.

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?