Вторая пачка часть 137
NE.0)BE0X := BE0X*X;
END.
Процедура-функция BE0X тестировалась на IBM PC/AT-286 для x = 1, 2, 3. Полученные результаты, пред¬ставленные в табл. 5.17, показывают совпадение с конт¬рольными значениями функций [Справочник ..., 1979] с задаваемой в про¬цедуре точностью.
Таблица 5.17
x ber(x) bei(x)
1 0.984381781213 0.249566040033
3 -0.221380249601 1.937586785250
5 -6.230082506865 0.116034583788
В заключение заметим, что вычисление функций ker(x) и kei(x) может быть организовано аналогично в соот¬вет¬ст¬вии с разложениями (5.46), (5.47).
JNX01:=EXP (N*LN(X1))*(EXP (N*LN(0.5))+S);
EXIT;
END;
S2:=0.;
Y:=3./X1;
FOR I:=0 TO 6 DO
BEGIN
S1:=S1+B(I)*EXP (I*LN(Y));
S2:=S2+C(I)* EXP (I*LN(Y));
END;
JNX01=COS(X1+S1)*S2/SQRT(X1);
END.
Процедура-функция JNX01 тестировалась на IBM PC/AT-286 при n = 0, 1; x = 2.9, 4, 15. Полученные при этом результаты представлены в табл. 5.10, значения по¬грешности указаны в сравнении с табличными ве¬ли¬чи¬нами и [Справочник ..., 1979].
Таблица 5.10
x n = 0 n = 1
2.9 -0.2243115953+4.96e-8 0.3754275162+3.44e-8
4 -0.3971498118 -1.20e-8 -0.0660433224-0.56e-8
15 -0.0142244714 -0.14e-8 0.2051040490-1.04e-8
Вычисление функции для любого целого v ре¬а¬л謬¬зовано наряду с процедурой jnx в процедуре JANX, в к¬торой используются внешние процедуры-функции JNX и JNX01. При этом вначале рассчитывается , а далее используются соотношения
.
Формальные параметры процедуры. Входные: n (тип in¬teger) - порядок v функции; x (тип real) - значение ар¬гу¬мен¬та; eps (тип real) - задаваемая точность (при |x| ? 3, при |x| > 3 значение не используется); a[1:6], b[0:6], c[0:6] (тип do¬uble) - значения коэффициентов раз¬ло¬же-ний (5.27), (5.28) (используются при |x| > 3). Выходной: janx (иден¬ти¬фи¬катор процедуры-функции, тип double) - значение .
FUNCTION JANX (N : INTEGER; X,EPS : DOUBLE;
A,B,C : ARRAY OF DOUBLE) : DOUBLE;
VAR JNX,JNX01 : DOUBLE;
BEGIN
{ ***ИСПОЛЬЗУЮТСЯ ВНЕШНИЕ ФУНКЦИИ JNX И JNX01 *** }
JANX:=1
Индекс
Элементарные функции
Линейные уравнения
Нелинейные уравнения
Случайные числа