Given the task of having to return an array that alternately takes elements from two arrays, what would be most Ruby way of completing the task? As of now, I have this code, but it doesn't feel very elegant.
def alternateTake (a, b)
raise ArgumentError, "Unequal length" if a.length != b.length
build = []
(0..a.length-1).each do |x|
build << (x.even? ? a[x] : b[x])
end
build
end
Example input & output:
method([1, 4, 3, 7], [1, 4, 2, 33]) = [1, 4, 3, 33]
method([98, 12, 41], [35, 22, 14]) = [98, 22, 41]
method([12, 33], [66, 45, 3]) = ERROR