home *** CD-ROM | disk | FTP | other *** search
/ C!T ROM 2 / ctrom_ii_b.zip / ctrom_ii_b / PROGRAM / PASCAL / NRPAS13 / BETAI.PAS < prev    next >
Pascal/Delphi Source File  |  1991-04-29  |  420b  |  15 lines

  1. FUNCTION betai(a,b,x: real): real;
  2. VAR
  3.    bt: real;
  4. BEGIN
  5.    IF ((x < 0.0) OR (x > 1.0)) THEN BEGIN
  6.       writeln('pause in routine BETAI'); readln
  7.    END;
  8.    IF ((x = 0.0) OR (x = 1.0)) THEN bt := 0.0
  9.    ELSE bt := exp(gammln(a+b)-gammln(a)-gammln(b)
  10.            +a*ln(x)+b*ln(1.0-x));
  11.    IF (x < ((a+1.0)/(a+b+2.0))) THEN
  12.       betai := bt*betacf(a,b,x)/a
  13.    ELSE betai := 1.0-bt*betacf(b,a,1.0-x)/b
  14. END;
  15.