在列表中添加值

时间:2013-10-30 14:11:44

标签: c++ eclipse-cdt

我有一个小问题。如何总结列表包中的所有数字?例如: 清单1是:

0.03326
0.02712
0.02178
0.01918
0.01751
0.01671
0.01602
0.0156
0.01549
0.01543
0.01568
0.01625
0.01658
0.01732
0.0178
0.01827
0.01855
0.01895
0.01949
0.02017
0.0211
0.02213
0.0236
0.02753
0.04504
0.09489
0.10131
0.11255

我想总结所有数字。

3 个答案:

答案 0 :(得分:4)

使用std::accumulate。它将返回列表中所有元素的算术总和。

double sum = std::accumulate(std::begin(list), std::end(list), 0.0);

答案 1 :(得分:0)

假设您正在使用std::list

double total = 0;
for (std::list<double>::const_iterator iterator = list1.begin(), end = list1.end(); iterator != end; ++iterator) {
    total += *iterator;
}
return total;

答案 2 :(得分:0)

如下所示:

double sum=0;
for (std::list<double>::iterator it=mylist.begin(); it != mylist.end(); ++it){
    sum+=*it;
}

希望它可以帮助你:)