Kody źródłowe/Tablica rozkładu normalnego
Kod w SAS 4GL, którym została policzona tabela rozkładu normalnego.
data _null_;
do while (1);
retain x1 -4 F2 0.001 x -4 F 0;
F1=cdf('NORMAL',x1);
minx=x;
maxx=50;
Fs=.;
do while (1);
x2=(minx+maxx)/2;
Fs=cdf('NORMAL',x2);
if abs(Fs-F2)<1e-9
then leave;
if Fs>F2 then
maxx=x2;
else
minx=x2;
end;
if x1<x2 then do;
x=x1;
F=round(F1,0.0000001);
if x<-3 or x>=3-0.00001 then
x1=x1+0.1;
else x1=x1+0.01;
end; else do;
x=round(x2,0.000001);
F=F2;
F2=F2+0.001;
end;
if x>4
then leave;
p=round(pdf('NORMAL',x),0.0000001);
keep x F p;
if x eq 0 or not (-1e-7<=x<=1e-7) then do;
put '|-';
put '| ' x;
put '| ' p;
put '| ' F;
end;
end;
run;
Ten tekst nie podlega pod prawa autorskie. Jest zatem własnością publiczną, ponieważ jego autor udostępnił go na licencji public domain.