2011-10-05 95 views
2

我想知道如何將浮點數組的所有元素加在一起,並使總和平均值爲。我是否必須使用for循環或者是否有另一種方法來將元素0與1一起加上2以及3等等?將所有數組元素加在一起

+0

這是一項家庭作業嗎? – mydogisbox

+2

添加一堆花車很棘手,結果必須「儘可能精確」,只是「有點精確」,或者它可以「天真地總結它們」(與實際總和的差別可能相當大案例) – harold

+0

@harold:從克里斯的另一個問題來看,看起來這些是成績,所以元素的大小應該大致相同。在這種情況下,我認爲精度不是太大的問題。 –

回答

7

您可以使用for循環,也可以使用std::accumulate

#include <iostream> 
#include <numeric> 

int main() 
{ 
    float arr[17] = { 1, 2, 3, }; 

    //Sum the array 
    const float sum = std::accumulate(arr, arr+17, 0.0); 

    std::cout << "Sum: " << sum << "\n"; 
    std::cout << "Average: " << sum/17 << "\n"; 
} 
+0

雖然一個很好的答案,那中間的評論有點誤導:D –

+0

謝謝,@MooingDuck。正如你可能想象的那樣,我沒有從頭開始寫答案。我從一個「如何總結'std :: vector'」例子中分裂了它。 –

相關問題