home *** CD-ROM | disk | FTP | other *** search
- PROGRAM d13r8(input,output);
- (* driver for routine CHSONE *)
- CONST
- nbins=10;
- npts=2000;
- TYPE
- barray = ARRAY [0..nbins] OF real;
- VAR
- glinext,glinextp : integer;
- glma : ARRAY [1..55] OF real;
- chsq,df,prob,x : real;
- i,ibin,idum,j : integer;
- bins,ebins : barray;
-
- (*$I MODFILE.PAS *)
- (*$I GAMMLN.PAS *)
-
- (*$I GCF.PAS *)
-
- (*$I GSER.PAS *)
-
- (*$I GAMMQ.PAS *)
-
- (*$I RAN3.PAS *)
-
- (*$I EXPDEV.PAS *)
-
- (*$I CHSONE.PAS *)
-
- BEGIN
- idum := -15;
- FOR j := 1 to nbins DO BEGIN
- bins[j] := 0.0
- END;
- FOR i := 1 to npts DO BEGIN
- x := expdev(idum);
- ibin := trunc(x*nbins/3.0)+1;
- IF (ibin <= nbins) THEN
- bins[ibin] := bins[ibin]+1.0
- END;
- FOR i := 1 to nbins DO BEGIN
- ebins[i] := 3.0*npts/nbins*exp(-3.0*(i-0.5)/nbins)
- END;
- chsone(bins,ebins,nbins,-1,df,chsq,prob);
- writeln('expected':15,'observed':15);
- FOR i := 1 to nbins DO BEGIN
- writeln(ebins[i]:14:2,bins[i]:15:2)
- END;
- writeln;
- writeln('chi-squared:':19,chsq:10:4);
- writeln('probability:':19,prob:10:4)
- END.
-