とくにあぶなくないRiSKのブログ

危ないRiSKのブログだったかもしれない。本当はRiSKだけどググラビリティとか取得できるIDの都合でsscriskも使ったり。

std::accumulate

STL―標準テンプレートライブラリによるC++プログラミング 第2版

// P119 ex05-31.cpp
#include<iostream>
#include<numeric>
#include<functional>
int main(){
 using std::cout;
 using std::endl;
 using std::accumulate;
 using std::multiplies;
 cout << "Illustrating the generic accumulate algorithm." << endl;
 const int N = 10;
 int a[N];
 for(int i = 0; i < N; ++i)a[i] = i + 1;

 cout << "1〜10の和: " << accumulate(a, a + N, 0) << endl
  << "1〜10の積: " << accumulate(a, a + N, 1, multiplies<int>()) << endl;
}

出力:

Illustrating the generic accumulate algorithm.
1〜10の和: 55
1〜10の積: 3628800