// C++11 version // Computes average and standard deviation // for data stored in std::vector #include #include void get_stats(const std::vector & x, double & average, double & sigma ) { // average = sum_i=1^N x_i /N // // sum_i=1^N (x_i-)^2 // sigma = sqrt( -------------------- ) // N-1 int N = x.size(); average=0; sigma = 0; for (auto x_i: x) {average += x_i;} average /= N; for (auto x_i: x) {sigma += pow(x_i-average,2);} sigma = sqrt(sigma/(N-1)); }