Averages/Arithmetic mean: Difference between revisions

Added LFE example
m (Fixed alphabetical order for Logo example)
(Added LFE example)
Line 1,262:
 
average(array(1,2,5,17,7.4)) //6.48</lang>
 
=={{header|LFE}}==
 
=== 1-Arity ====
 
<lang lisp>
(defun mean (data)
(/ (lists:sum data)
(length data)))
</lang>
 
Usage:
<pre>
> (mean '(1 1))
1.0
> (mean '(1 2))
1.5
> (mean '(2 10))
6.0
> (mean '(6 12 18 24 30 36 42 48 54 60 66 72 78))
42.0
</pre>
 
=== n-Arity ===
 
Functions in LFE (and Erlang) have set arity, but macros can be used to provide the same use as n-arity functions:
 
<lang lisp>
(defmacro mean args
`(/ (lists:sum ,args)
,(length args)))
</lang>
 
Usage:
 
<pre>
> (mean 6 12 18 24 30 36 42 48 54 60 66 72 78)
42.0
</pre>
 
=={{header|Liberty BASIC}}==
Anonymous user