如何使用 std::累积在 C++ 中计算总和立方体

how to use std::accummulate in c++ to calculate sum cubes

本文关键字:计算 C++ 立方体 何使用 std      更新时间:2023-10-16

假设我有一个范围,我想计算每个元素的立方体之和,例如,对于我想要[1,2,3]

13+ 2 3+33 =36

我将如何使用std::accummulate()来做到这一点,我必须编写自己的二进制函数?我有:

std::accummulate(iterator to beginning,
iterator to end of range,
0.0,
[](int i, int j) { return i*i*i + j*j*j; });

但由于某种原因,这不起作用。

这个问题很奇怪,但在我回来的时候,我只是将i乘以 3 次并j并添加。

像往常一样,CppReference是你的朋友。

不应添加运行总和和新值,而应将运行总和添加到新值的多维数据集中。

std::accumulate(first, last, 0, [](int sum, int value) 
{ return sum + (value*value*value); });