Вторая пачка часть 233
По приведенной процедуре DERCOEF можно вы¬чис¬лить кэф¬фициенты Ci для n ординат, со-от¬вет¬с¬¬т¬ву¬ю¬щих абс¬цис¬сам xi в n-точечном конечно-ра第ност¬ном вы¬¬ра¬же¬нии для k-й про¬и第водной, зна-че¬ние которой не¬обходимо оп¬ре¬де¬лить в точ¬ке xp .
При k = 0 вычисляются интерполяционные ко¬эф¬фи¬ци¬ен¬ты Лагранжа.
Формальные параметры про¬цедуры. Входные: k (тип in¬¬te¬ger) - порядок производной; n (тип integer) - ко¬ли¬чество тчек конечно-раз¬ност¬¬ного пред¬став¬ле¬ния про¬из¬водной; kk (тип in¬te¬ger) - параметр, иден¬ти¬фи¬ци¬ру¬ю¬щий формулу вы¬¬чис¬ле¬ния факториала (см. описание пବра¬мет¬ров про¬це¬ду-ры-функции fct в п. 1.1, гл. 1); xp (тип real) - аб¬с¬¬¬цисса, в которой вы¬¬числяется про¬из¬вод¬ная; xtab[1:n] (тип real) - аб¬сциссы xi то¬чек, в ко¬то¬рых вы¬числяются ко¬эф¬фи¬ци¬енты ко¬нечно-раз¬ност¬нго вы-ражения k-й про¬из¬вод¬ной. Вы¬ход¬ные: c[1:n] (тип real) - массив ко¬эф¬фи¬ци¬ентов Ci n-то¬чечной ко-нечно-раз¬нос¬т¬ной аשּׁпро¬к¬си¬ма¬ции k-й про¬изводной.
PROCEDURE DERCOEF(K,N,KK,XP:REAL;XTAB:MASA;
VAR C: MAS1);
VAR FK,SUM,DN,PT : REAL; I,T,J,M,H : INTEGER;
XU ARRAY [1..N-1] OF INTEGER;
LABEL ZZ, XX, YY,AA;
BEGIN
{*** ВЫЧИСЛЕНИЕ ФАКТОРИАЛА N! С ПОМОЩЬЮ
ПРОЦЕДУРЫ-ФУНКЦИИ FCT; ****}
FK:=FCT(N,KK);
T:=N-K-1;
IF T<0 THEN
GO TO ZZ;
FOR J:=1 STEP 1 UNTIL N DO
BEGIN
SUM:=0;
DN:=PT:=1;
FOR I:=1 STEP 1 UNTIL N DO
IF I<>J THEN
DN:=DN*(XTAB[J]-XTAB[I]);
IF T=0 THEN
GO TO YY;
M:=H:=1;
AA:
IF (H=J)X(XTAB[H]=XP) THEN
BEGIN
H:=H+1;
GO TO AA
END;
IF H>N THEN
BEGIN
M:=M-1;
IF M<0 THEN
GO TO XX;
H:=XU[M]+1;
GO TO AA
END;
XU[M]:=H;
M:=M+1;
IF M<T THEN
BEGIN
H:=H+1; GO TO AA
END;
FOR I:=1 STEP 1 UNTIL T DO
PT:=PT*(XP-XTAB[XU[I]]);
SUM:=SUM+PT;
M:=T;
PT:=1;
H:=XU[T]+1;
GO TO AA;
YY: SUM:=1;
XX: C[J]:=SUM*FK/DN
END {*** J ***};
EXIT;
ZZ: FOR I:=1 STEP 1 UNTIL N DO C[I]:=0;
END { *** DERCOEF *** }
Индекс
Элементарные функции
Линейные уравнения
Нелинейные уравнения
Случайные числа