已解决问题

C++解数学题~求高手帮忙~!

20
[ 标签:c++,数学题 ]
定义一个数组,数据为:6,3,7,1,4,8,2,9,11,5。请创建一个数组,然后把数组的初始值赋给它,然后对该数组求标准差(均方差);
问题补充  2009-03-30 10:57
楼下的好像不行啊~我要的是C++编程的~谢谢~!
遠明 回答:2 人气:22 解决时间:2009-03-30 12:20
  
满意答案
#include<iostream>
#include<cmath>
using namespace std;

void main()
{
double sum=0, c=0, b, s2, s,ave;
double a[]={6,3,7,1,4,8,2,9,11,5};
for (int i=0; i<sizeof(a)/sizeof(a[0]); ++i)
sum = sum + a[i];
ave = sum/(sizeof(a)/sizeof(a[0]));


for (int j=0; j<sizeof(a)/sizeof(a[0]); j++)
{
b = pow((ave-a[j]),2);
c = c + b;
}

s2 = c/(sizeof(a)/sizeof(a[0]));
s = pow(s2,0.5);
cout << "s=" << s <<endl;
}
风の龙卷 回答采纳率:37.5% 2009-03-30 12:14
评价答案
  • 是否解决问题(参与评价0次)
  • 0
  • 0
  • 0
  • 是否原创答案(参与评价0次)
  • 0
  • 0
遠明的感言:
终于可以交作业啦~谢谢

相关内容

其他答案

#include "math.h"
main()
{int i,j,a[],sum=0,ave=0;
double s=0;
a[0]=6;a[1]=3;a[2]=7;a[3]=1;a[4]=4;a[5]=8;a[6]=2;a[7]=9;a[8]=11;a[9]=5;
for(i=0;i<10;i++)
sum+=a[i];
ave+=sum/10;
for(j=0;j<10;j++)
s=sqrt((a[j]-ave)*(a[j]-ave)/j);
printf("The Standard Deviation=%f",&s);
}
答案补充
大同小异,我只学过C,只大概说明算法,望你自己转换成C++了
I wanna fly! 回答采纳率:31.3% 2009-03-30 11:22