在计算4个值的方差时,我的错误在哪里?

时间:2018-01-24 22:17:31

标签: c++

我得到了正确的输出,但我没有得到正确的方差输出。样本输入为8,10,12,14。

它应该输出均值为11,方差为5.然而,我得到的均值是11,方差是6.66667。

// Include statements
#include <iostream>
#include <cmath>
using namespace std;

// Main function
int main ()
{
  // Input values
  float n1, n2, n3, n4;
  cout << "Enter four numbers:\n";
  cin >> n1 >> n2 >> n3 >> n4;

  // Calculate mean of 4 values
  float mean;
  mean = (n1+n2+n3+n4)/4;

  // Calculate variance of 4 values
  float variance;
  float var1 = ((n1-mean)*(n1-mean));
  float var2 = ((n2-mean)*(n2-mean));
  float var3 = ((n3-mean)*(n3-mean));
  float var4 = ((n4-mean)*(n4-mean));

  variance = (var1+var2+var3+var4)/3;


  // Print the output
  cout << "mean = " << mean << endl;
  cout << "variance = " << variance << endl;
  return 0;
}

1 个答案:

答案 0 :(得分:1)

您已将var1+var2+var3+var4除以3而不是4。