|
Текст подпрограммы и версий sf42r_p.zip |
Тексты тестовых примеров tsf42r_p.zip |
Вычисление функции F - распределения вероятностей (распределение Снедекора) с целыми степенями свободы.
SF42R вычисляет вероятность того, что случайная величина подчиненная закону F - распределения вероятностей (распределению Снедекора) с целыми степенями n1 и n2, меньше или равна значению f.
M.Abramowitz, I.A.Stegun, Handbook of Mathematical Functions, New York, Dover Publications, INC., 1965.
function SF42R(F :Real; N1 :Integer; N2 :Integer;
var IERR :Integer): Real;
Параметры
| F - | заданное значение аргумента f (тип: вещественный); |
| N1, N2 - | заданные значения степеней свободы n1 и n2 (тип: целый); |
| IERR - | целая переменная, служащая для сообщения об ошибках, обнаруженных в ходе работы функции; при этом: |
| IERR=65 - | когда одна или обе степени свободы меньше 1 или их сумма больше 2*104; значение функции полагается равным 3.4E38; |
| IERR=66 - | когда заданный предел интегрирования меньше 0; значение функции полагается равным 3.4E38. |
Версии: нет
Вызываемые подпрограммы
| SF35R - | вычисление дополнительной функции ошибок (дополнительного интеграла вероятностей) erfc x. |
| UTSF12 - | подпрограмма выдачи диагностических сообщений при работе функции SF42R. |
Замечания по использованию: нет
Unit tsf42r_p;
interface
uses
SysUtils, Math, { Delphi }
Lstruct, Lfunc, UtRes_p, SF42R_p;
function tsf42r: String;
implementation
function tsf42r: String;
var
N1,N2,IERR :Integer;
F,Y :Real;
begin
Result := ''; { результат функции }
F := 4.0/9.0;
N1 := 12;
N2 := 8;
Y := SF42R(F,N1,N2,IERR);
Result := Result + Format(' %20.16f %3d ',[Y,IERR]) + #$0D#$0A;
UtRes('tsf42r',Result); { вывод результатов в файл tsf42r.res }
exit;
end;
end.
Результаты:
Y = 0.09935257600
IERR = 0