Calculate sum of elements in a vector : accumulate « STL Algorithms Helper « C++ Tutorial






#include <iostream>
using std::cout;
using std::endl;

#include <algorithm>
#include <numeric>
#include <vector>
#include <iterator>

int main()
{
   std::ostream_iterator< int > output( cout, " " );

   int a2[ 10 ] = { 100, 2, 8, 1, 50, 3, 8, 8, 9, 10 };
   std::vector< int > v2( a2, a2 + 10 ); // copy of a2
   cout << "\n\nVector v2 contains: ";
   std::copy( v2.begin(), v2.end(), output );

   // calculate sum of elements in v
   cout << "\n\nThe total of the elements in Vector v is: "
      << std::accumulate( v2.begin(), v2.end(), 0 );

   cout << endl;
   return 0;
}
Vector v2 contains: 100 2 8 1 50 3 8 8 9 10

The total of the elements in Vector v is: 199








32.3.accumulate
32.3.1.Calculate sum of elements in a vector
32.3.2.Algorithm: Use accumulate to calculate product
32.3.3.Demonstrating the generic accumulate algorithm with a reverse iterator
32.3.4.Illustrating the generic accumulate algorithm with predicate
32.3.5.The total of the elements in a vector