Anonymous user
Averages/Arithmetic mean: Difference between revisions
→{{header|C++}}
Line 212:
<lang cpp>#include <vector>
const double mean(const std::vector<double>& numbers)
{
if (numbers.size() == 0)
Line 228:
#include <algorithm>
const double mean(const std::vector<double>& numbers)
{
if (numbers.empty())
return 0.0;
return std::accumulate(numbers.begin(), numbers.end(), 0.0) / numbers.size();
}</lang>
Idiomatic version templated on any kind of iterator (not realy useful):
<lang cpp>#include <iterator>
Line 241:
template <typename Iterator>
const double mean(Iterator begin, Iterator end)
{
if (begin == end)
return 0.0;
return std::accumulate(begin, end, 0.0) / std::distance(begin, end);
}</lang>
|