code 35177;
procedure NONEXP BESS I(X, N, I); value X, N;
integer N; real X; array I;
if X = 0 then
begin I[0]:= 1; for N:= N step - 1 until 1 do
I[N]:= 0
end else
begin integer K; real X2, R, S; boolean NEGATIVE;
NEGATIVE:= X < 0; X:= ABS(X);
R:= S:= 0; X2:= 2/X; K:= START(X,N,1);
for K:= K step - 1 until 1 do
begin R:= 1 / (R + X2 * K); S:= R * (2 + S);
if K <= N then I[K]:= R
end;
I[0]:= R:= 1 / (1 + S);
if NEGATIVE then
begin for K:= 1 step 1 until N do
I[K]:= R:= - R * I[K]
end else
for K:=1 step 1 until N do I[K]:= R:= R * I[K];
end NONEXP BESS I;
eop