Przejdź do zawartości

Kody źródłowe/Tablica rozkładu chi-kwadrat

Z Wikibooks, biblioteki wolnych podręczników.
Tablica rozkładu chi-kwadrat • Kod źródłowy
Tablica rozkładu chi-kwadrat
Kod źródłowy

SAS 4GL

[edytuj]

Kod w języku SAS 4GL wyliczający tabelę.

%macro poziom(alfa);
	if n=0 then do;
		put "!&alfa.";
	end; else do;
		minx=0;
		maxx=5000;
		F=-1;
		do while(abs(F-(1-&alfa.))>1e-8);
			x=(minx+maxx)/2;
			F=cdf('CHISQUARE',x,n);
			if F>1-&alfa.
				then maxx=x;
				else minx=x;
		end;
		put '|' x;
	end;
%mend;

data _null_;
	n=0;
	m=-2;
	do while (n<=1000);
		m=m+1;
		if n=0 then 
			put '!<math>n\;</math>';
		else do;
			if mod(m,100)=0 and m>50 then do;
				put '|}';
				put '{|class="wikitable"';
			end; else
				put '|-';
			put '!' n;
		end;
		format x 7.5;
		%poziom(0.999);
		%poziom(0.995);
		%poziom(0.99);
		%poziom(0.98);
		%poziom(0.975);
		%poziom(0.95);
		%poziom(0.9);
		%poziom(0.85);
		%poziom(0.8);
		%poziom(0.75);
		%poziom(0.7);
		%poziom(0.65);
		%poziom(0.6);
		%poziom(0.55);
		%poziom(0.5);
		%poziom(0.45);
		%poziom(0.4);
		%poziom(0.35);
		%poziom(0.3);
		%poziom(0.25);
		%poziom(0.2);
		%poziom(0.15);
		%poziom(0.1);
		%poziom(0.05);
		%poziom(0.025);
		%poziom(0.02);
		%poziom(0.01);
		%poziom(0.005);
		%poziom(0.001);
		if n>0
			then put '!' n;
			else put '!';
		if n<200 
			then n=n+1;
		else if n<500 
			then n=n+5;			
			else n=n+10;
	end;
run;


Public Domain
Ten tekst nie podlega pod prawa autorskie. Jest zatem własnością publiczną, ponieważ jego autor udostępnił go na licencji public domain.