code 41518;
real procedure BETAINV(PROB,ALPHA1,ALPHAZ2);
value PROB,ALPHA1,ALPHA2; real PROB,ALPHA1,ALPHA2;
begin real X,Y,TOL;
comment DEFINE ACCURACY;
TOL:= 10-10;
comment TEST FOR ADMISSIBILITY OF PARAMETERS;
if ALPHA1 ≤ 0 then
STATAL3 ERROR(“BETAINV”,2,ALPHA1)
else
if ALPHA2 ≤ 0 then
STATAL3 ERROR(“BETAINV”,3,ALPHA2)
else
if PROB ≤ TOL ∨ PROB ≥ 1 - TOL then
STATAL3 ERROR(“BETAINV”,1,PROB);
X:= 0;
BETAINV:= INVERSE(X,BETA(X,ALPHA1,ALPHA2),PROB,TOL)
end BETAINV;
eop