gouf
7/20/2014 - 9:39 AM

startからstart+edge までの範囲を含む配列を生成する

startからstart+edge までの範囲を含む配列を生成する

require 'pp'
start, edge = 2, 10
pp pd = [start].product((0..edge).to_a)
pp pd.map{|x| x.inject(:+)}
=begin
[[2, 0],
 [2, 1],
 [2, 2],
 [2, 3],
 [2, 4],
 [2, 5],
 [2, 6],
 [2, 7],
 [2, 8],
 [2, 9],
 [2, 10]]
[2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12]
=end

pp Range.new(start, edge).to_a
pp Range.new(start, start + edge).to_a
#=> [2, 3, 4, 5, 6, 7, 8, 9, 10]
#=> [2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12]