Multiply by 2, round, divide by 2.
[4.12, 4.24, 4.25, 4.33, 4.53, 4.65, 4.75, 4.84].map do |x| r = (x * 2).round / 2.0 r.to_i == r ? r.to_i : rend=> [4, 4, 4.5, 4.5, 4.5, 4.5, 5, 5]