Averages/Median: Difference between revisions

→‎{{header|Elixir}}: removed unnecessary division.
m (added whitespace to the task's preamble.)
(→‎{{header|Elixir}}: removed unnecessary division.)
Line 783:
def median([]), do: nil
def median(list) do
len = Enum.countlength(list)
sorted = Enum.sort(list)
mid = div(len, 2)
if rem(len,2) == 0, do: (Enum.at(sorted, mid-1) + Enum.at(sorted, mid)) / 2,
rem = rem(len, 2)
(Enum.at(sorted, mid) + else: Enum.at(sorted, mid + rem - 1)) / 2
end
end
 
median = fn list -> IO.puts "#{inspect list} => #{inspect Average.median(list)}" end
median.([])
Line 800:
<pre>
[] => nil
[14] => 1.04
[41, 56] => 43.5
[45, 12, 34] => 3.04
[62, 53, 25, 1] => 32.5
[53, 52, 46, 13, 2] => 4.03
[2, 6, 4, 12, 3, 21, 3] => 23.50
</pre>
 
Anonymous user