Решение, которое вы разместили, работает:
[4] pry(main)> graph_nums = [1,2,3,4,5,6]
=> [1, 2, 3, 4, 5, 6]
[5] pry(main)> graph_nums.each {|x| puts "-" * x}
-
--
---
----
-----
------
=> [1, 2, 3, 4, 5, 6]
Скорее всего graph_nums
- это массив строк. Вы можете преобразовать их в целые числа, используя String#to_i
:
[6] pry(main)> graph_nums = ['1','2','3','4','5','6']
=> ["1", "2", "3", "4", "5", "6"]
[7] pry(main)> graph_nums.each {|x| puts "-" * x}
TypeError: no implicit conversion of String into Integer
from (pry):7:in `*'
[8] pry(main)> graph_nums.each {|x| puts "-" * x.to_i}
-
--
---
----
-----
------
=> ["1", "2", "3", "4", "5", "6"]