请编一个C++ 计算标准差

来源:百度知道 编辑:UC知道 时间:2024/06/26 02:28:21
double deviation(double f[], int size);
请用以上这个条件排列,编一个标准差计算(deviation)。f[]和size(范围)。

谢谢。

int arr[]={6,3,7,1,4,8,2,9,11,5};
vector<int> list(arr,arr+10);
int pj = 0; //平均数
int count=0; //总数
double pfcount = 0;//平方和
for(int i=0;i<list.size();i++)
count+=list.at(i);
pj=count/list.size();

for(int i=0;i<list.size();i++){
int cha = abs(list.at(i)-pj);
cout<<"数"<<(i+1)<<":"<<list.at(i)<<" 差的绝对值:" << cha<<endl;
pfcount+=pow((double)cha,2); //离差平方和
}
pfcount=pfcount/list.size(); //离差平方和平均

cout<<"平均数:"<<pj<<endl;
cout<<"标准差:"<<sqrt(pfcount)<<endl;

#include <stdio.h>
#include<math.h>
double deviation(double f[], int size)
{
int i;
double average=0,s=0;
for(i=0;i<size;i++)
{
average+=