Дано число, мой код должен вернуть все четные числа между 1
и числом, и напечатать их в следующем формате:Рубиновые массивы методы и выходы
22
4444
666666
etc...
Это код до сих пор:
def pattern(n)
n == 1 ? "" : arr = (1..n).select {|i| i if i % 2 == 0}.each {|item| return (item.to_s * item)}
end
С любым номером больше четырех, он будет возвращать только следующее:
22
Я думаю, что это может иметь какое-то отношение к return
в блоке. Тем не менее, при использовании print
или puts
, это возвращает отдельный элемент массива следующим образом:
[2]
Идеи для пути вокруг этого, так что можно достичь желаемых результатов?
иногда лучше закодировать на несколько строк. –