RosettaCodeData/Task/Averages-Median/Pluto/averages-median.pluto
2025-08-11 18:05:26 -07:00

17 lines
340 B
Text

local function median(a)
local len = #a
if len == 0 then return nil end
local b = a:sorted()
local hlen = len // 2
if len % 2 == 1 then return b[hlen + 1] end
return (b[hlen] + b[hlen + 1]) / 2.0
end
local arrays = {
{4, 2, 5, 3, 1},
{9, 6, 8, 7},
{2},
{}
}
for arrays as a do print(median(a)) end