Averages/Arithmetic mean: Difference between revisions

→‎{{header|R}}: Added REBOL example.
m (→‎{{header|Chef}}: "Endloop" -> "Endif")
(→‎{{header|R}}: Added REBOL example.)
Line 760:
}</lang>
 
=={{header|REBOL}}==
<lang REBOL>rebol [
Title: "Arithmetic Mean (Average)"
Author: oofoe
Date: 2009-12-11
URL: http://rosettacode.org/wiki/Average/Arithmetic_mean
]
 
average: func [v /local sum][
if empty? v [return 0]
 
sum: 0
forall v [sum: sum + v/1]
sum / length? v
]
 
; Note precision loss as spread increased.
 
print [mold x: [] "->" average x]
print [mold x: [3 1 4 1 5 9] "->" average x]
print [mold x: [1000 3 1 4 1 5 9 -1000] "->" average x]
print [mold x: [1e20 3 1 4 1 5 9 -1e20] "->" average x]</lang>
 
Output:
 
<pre>[] -> 0
[3 1 4 1 5 9] -> 3.83333333333333
[1000 3 1 4 1 5 9 -1000] -> 2.875
[1E+20 3 1 4 1 5 9 -1E+20] -> 0.0</pre>
 
=={{header|Ruby}}==
Anonymous user