Расчет медианы в рубине
Как рассчитать медиану массива чисел, используя Ruby?
Я новичок, и в процессе обучения я стараюсь придерживаться того, чему уже научили. Таким образом, другие вопросы, которые я нашел, находятся за пределами моей компетенции.
Вот мои заметки и моя попытка:
отсортировать массив в порядке возрастания.выяснить, если он нечетный или даже по длине.если нечетный, разделите длину отсортированного массива +1 пополам. Это показатель медианы. Верните это значение.если даже, найдите два средних числа отсортированного массива и разделите их на 1/2. Верните это значение.Нахождение средних двух чисел:разделите длину отсортированного массива пополам. Это индекс пт. первый средний номер.разделите длину отсортированного массива + 2 пополам. Это индекс пт. второго среднего числа.взять среднее из этих двух средних чисел.
def median(array)
ascend = array.sort
if ascend % 2 != 0
(ascend.length + 1) / 2.0
else
((ascend.length/2.0) + ((ascend.length + 2)/2.0) / 2.0)
end
end