
Добавил:
Studfiles2
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:
uses crt,graph;
label m1,m2,m3;
const X:array [1..10] of real=(0.05,0.1,0.2,0.2,0.25,0.03,0.035,0.04,0.045,0.05);
Z:array [1..10] of real=(0.1,0.5,0.8,0.8,0.6,0.1,0.2,0.0,0.3,0.1);
var m,k,i,j,n,grmode,grdr,max,maxx,maxy,shag:integer;
eta1,hi2,s,s1,MO,S2,delta:real;
eta,ksy:array[1..100] of real;
v:array[1..10] of integer;
F:char;
function sum(i:integer):real;
var j:integer;
s:real;
begin
s:=0;
for j:=1 to i do
s:=s+X[j];
sum:=s
end;
begin
clrscr;
randomize;
n:=1;
for k:=1 to 100 do
ksy[k]:=random;
for k:=1 to 100 do begin
for m:=1 to 10 do begin
if ksy[k]<=sum(m) then begin
v[m]:=v[m]+1;
eta[k]:=Z[m];
goto m1;
end;
end;
m1:
end;
hi2:=0;
for i:=1 to 10 do
hi2:=hi2+sqr(v[i]-X[i]*100)/(X[i])/100;
writeln('the meaning of hi2= ',hi2:3:3);
S:=0;
for i:=1 to 100 do
s:=s+eta[i];
MO:=s/100;
writeln('MO=',MO:3:3);
s1:=0;
for i:=1 to 100 do
S1:=s1+sqr(eta[i]-MO);
S2:=S1/(100-1);
writeln('Dispersion=',S2:3:3);
delta:=1.95/sqrt(12)/sqrt(100);
writeln('Doverit interval from ',0.5-delta:3:3,' to ',0.5+delta:3:3);
writeln('Show histogram? Y/N');
readln(F);
if F='N' then Exit;
initgraph(GrMode,GrDR,'h:\Student\BP\BGI');
line(10,getmaxy-10,getmaxx-10,getmaxy-10);
line(10,getmaxy-10,10,10);
max:=v[1];
for i:=2 to 10 do
if v[i]>max then max:=v[i];
maxx:=getmaxx;
maxy:=getmaxy;
shag:=trunc((maxx-20)/10);
for i:=1 to 10 do
line(10+(i-1)*shag,maxy-10-trunc(v[i]*(maxy-20)/max),i*shag+10,maxy-10-trunc(v[i]*(maxy-20)/max));
readln;
end.
label m1,m2,m3;
const X:array [1..10] of real=(0.05,0.1,0.2,0.2,0.25,0.03,0.035,0.04,0.045,0.05);
Z:array [1..10] of real=(0.1,0.5,0.8,0.8,0.6,0.1,0.2,0.0,0.3,0.1);
var m,k,i,j,n,grmode,grdr,max,maxx,maxy,shag:integer;
eta1,hi2,s,s1,MO,S2,delta:real;
eta,ksy:array[1..100] of real;
v:array[1..10] of integer;
F:char;
function sum(i:integer):real;
var j:integer;
s:real;
begin
s:=0;
for j:=1 to i do
s:=s+X[j];
sum:=s
end;
begin
clrscr;
randomize;
n:=1;
for k:=1 to 100 do
ksy[k]:=random;
for k:=1 to 100 do begin
for m:=1 to 10 do begin
if ksy[k]<=sum(m) then begin
v[m]:=v[m]+1;
eta[k]:=Z[m];
goto m1;
end;
end;
m1:
end;
hi2:=0;
for i:=1 to 10 do
hi2:=hi2+sqr(v[i]-X[i]*100)/(X[i])/100;
writeln('the meaning of hi2= ',hi2:3:3);
S:=0;
for i:=1 to 100 do
s:=s+eta[i];
MO:=s/100;
writeln('MO=',MO:3:3);
s1:=0;
for i:=1 to 100 do
S1:=s1+sqr(eta[i]-MO);
S2:=S1/(100-1);
writeln('Dispersion=',S2:3:3);
delta:=1.95/sqrt(12)/sqrt(100);
writeln('Doverit interval from ',0.5-delta:3:3,' to ',0.5+delta:3:3);
writeln('Show histogram? Y/N');
readln(F);
if F='N' then Exit;
initgraph(GrMode,GrDR,'h:\Student\BP\BGI');
line(10,getmaxy-10,getmaxx-10,getmaxy-10);
line(10,getmaxy-10,10,10);
max:=v[1];
for i:=2 to 10 do
if v[i]>max then max:=v[i];
maxx:=getmaxx;
maxy:=getmaxy;
shag:=trunc((maxx-20)/10);
for i:=1 to 10 do
line(10+(i-1)*shag,maxy-10-trunc(v[i]*(maxy-20)/max),i*shag+10,maxy-10-trunc(v[i]*(maxy-20)/max));
readln;
end.
Соседние файлы в папке СПО