C++ 벡터(vector)에 담긴 모든 요소의 합계는 std::accumulate 함수를 사용하면 매우 간단하게 구할 수 있습니다. 이 함수는 <numeric> 헤더 파일에 정의되어 있으며, 벡터에 저장된 모든 값을 지정한 초기값부터 순차적으로 누적하여 전체 합계를 계산합니다.
알고리즘
시작
vector 타입의 v를 선언한다.
배열 형태로 v 벡터에 초기값들을 넣는다.
"모든 요소의 합계는:"을 출력한다.
accumulate(v.begin(), v.end(), 0)을 호출하여
v 벡터의 모든 값의 합을 계산한다.
합계 결과를 출력한다.
종료.예제 코드
#include<iostream>
#include<vector>
#include<numeric>
using namespace std;
int main() {
vector<int> v = {2, 7, 6, 10};
cout << "모든 요소의 합계는:" << endl;
cout << accumulate(v.begin(), v.end(), 0);
}코드 설명
accumulate(v.begin(), v.end(), 0) 호출에서 세 번째 인자인 0은 누적이 시작되는 초기값입니다. 함수는 벡터의 첫 번째 요소부터 마지막 요소까지 차례대로 초기값에 더해 나가며 최종 합계를 반환합니다.
실행 결과
모든 요소의 합계는: 25
위 예제에서 벡터 v = {2, 7, 6, 10}의 모든 요소를 더한 값인 25가 출력됩니다. 참고로 초기값을 다른 숫자로 변경하면 그 값이 합계에 추가로 반영되므로, 일반적인 합계를 구할 때는 0을 사용하는 것이 좋습니다.