C ++中向量中元素的除法

时间:2018-07-14 20:20:15

标签: c++ algorithm stl

我在c ++中有矢量,例如std::vector<double> v = {10.0, 5.0, 2.0}。我想按顺序划分向量的所有元素,即10 / 5.0 = 2.0,然后将2.0 / 2.0划分为1。因此,最后的答案是向量的所有元素的划分。有什么办法可以使用某些STL函数或算法有效地做到这一点。我不想使用for循环。谢谢您的帮助!

1 个答案:

答案 0 :(得分:3)

正如 @AlgirdasPreidžius在评论中提到的那样(我在弹出之前就开始写答案了),您可能只是错过了该算法应以第一个数字开头而不是 除以它。这应该是您所期望的:

<html>
<body>
<div id="main">
  <div id="div1"></div>
  <div id="div2"></div>
  <button onclick="myFunction()">Show only Div 1</button>
</div>
</body>
</html>

请注意int main() { std::vector<double> vec = {10, 5, 2}; std::cout << std::accumulate(vec.cbegin() + 1, vec.cend(), vec[0], std::divides<>()); } + 1之后的vec.cbegin()作为起始值