?? 方差計算之c語言模擬.txt
字號:
方差計算之C語言模擬[原創(chuàng)]
在實驗中,我們往往需要計算均值與方差這兩個數(shù)據(jù),均值代表著平均結(jié)果,而方差代表隨機變量與期望值的偏差程度,很可能在多次實驗中我們得到的均值非常精確,而方差卻很大,那么這樣的實驗是不能讓人滿意的。如測量病人血壓100次,發(fā)現(xiàn)平均值與正常人的非常相似,那么我們不能說這個病人的血壓沒有問題,因為平均值不能反映病人血壓與正常值得偏離程度,即血壓的波動情況。
在下面的代碼中,我們隨機生成一些虛擬的實驗結(jié)果,然后計算其平均值與方差。
#define N 50
#define M 50
#define K1 10
#define K2 40
#i nclude <conio.h>
#i nclude <stdlib.h>
void init(float array[N])
{
int i;
int s=1;
for(i=0;i<N;i++)
array[i]=(s*=-1)*random(K2)/(float)K1+M;
}
void fangcha(float array[N],float *aver,float *fch)
{
int i;
float sum=0;
float ave;
for(i=0;i<N;i++)
sum+=array[i];
ave=sum/N;
*aver=ave;
sum=0;
for(i=0;i<N;i++)
sum+=(array[i]-ave)*(array[i]-ave);
ave=sum/N;
*fch=ave;
}
void output(float array[N])
{
int i;
int j=0;
for(i=0;i<N;i++)
{
if(j%5==0)
printf("\n");
printf("%13f",array[i]);
j++;
}
printf("\n");
}
void main()
{
float data[N];
float aver,fch;
init(data);
fangcha(data,&aver,&fch);
printf("\nThe original data is:\n");
output(data);
printf("\nThe average is:\n%f\n",aver);
printf("\nThe fangcha is:\n%f\n",fch);
}
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -