Calcul de la Déviation Standard & la Variance de C++

donc j'ai posté quelques fois auparavant, et mes problèmes ont été assez vague

j'ai commencé le C++, cette semaine, et ont été faire un petit projet

donc je suis en train de calc déviation standard & variance

mon code charge un fichier de 100 entiers et les mettre dans un tableau, les compte, les cvac moyenne, somme, var et sd

mais je vais avoir un peu de mal avec la variance

je reçois un grand nombre - j'ai le sentiment que ça à faire avec son calcul

ma moyenne et de la somme sont ok

de l'aide ou des conseils?

NB:

Calcul de la Déviation Standard & la Variance de C++

Acclamations,

Jack

 using namespace std;
    int main()

{

int n = 0;
int Array[100];
float mean;
float var;
float sd;
string line;
float numPoints;

ifstream myfile(“numbers.txt");

if (myfile.is_open())

{
    while (!myfile.eof())

    {
        getline(myfile, line);

        stringstream convert(line);

        if (!(convert >> Array[n]))

        {
            Array[n] = 0;
        }
        cout << Array[n] << endl;

        n++;

    }

    myfile.close();

    numPoints = n;

}
else cout<< "Error loading file" <<endl;

int sum = accumulate(begin(Array), end(Array), 0, plus<int>());

cout << "The sum of all integers: " << sum << endl;

mean = sum/numPoints;

cout << "The mean of all integers: " << mean <<endl;

var = ((Array[n] - mean) * (Array[n] - mean)) / numPoints;

sd = sqrt(var);

cout << "The standard deviation is: " << sd <<endl;

return 0;

}
Dans (Array[n] - mean) n'est pas n un de plus que le nombre d'éléments que vous avez lu? Aussi, while (!myfile.eof()) est presque toujours tort
Vous devriez utiliser des doubles au lieu de float
devrait être "

OriginalL'auteur Jack | 2015-10-21