Averages/Arithmetic mean: Difference between revisions
Content added Content deleted
Underscore (talk | contribs) m (→{{header|Chef}}: "Endloop" -> "Endif") |
(→{{header|R}}: Added REBOL example.) |
||
Line 760: | Line 760: | ||
}</lang> |
}</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}}== |
=={{header|Ruby}}== |