code 41514; real procedure GAMMAINV(PROB,ALPHA,SCALE); value PROB,ALPHA,SCALE; real PROB,ALPHA,SCALE; begin real X,TOL; TOL:= 10-10; if ALPHA ≤ 0 then STATAL3 ERROR(“GAMMAINV”,2,ALPHA) else if SCALE ≤ 0 then STATAL3 ERROR(“GAMMAINV”,3,SCALE) else if PROB ≤ TOL ∨ PROB ≥ 1 - TOL then STATAL3 ERROR(“GAMMAINV”,1,PROB); X:= ALPHA × SCALE; GAMMAINV:= INVERSE(X,GAMMA(X,ALPHA,SCALE),PROB, TOL) end GAMMAINV; eop