1

1 列目が i と j の間の整数で、2 列目が n より小さい乱数である 2D 配列を作成する方法

何かのようなものa = [[6,4],[7,3],[8,1],[9,1],[10,3],[11,2]]

(i..j).to_a最初の列を作成し、2 番目の列を作成することを知ってrand(n)います。

4

4 に答える 4

5

Enumerable#mapを使用

i, j = 6, 11
(i..j).map { |x| [x, rand(10)] }
# => [[6, 8], [7, 6], [8, 4], [9, 9], [10, 0], [11, 3]]
于 2013-07-27T14:31:14.070 に答える
3

あなたはほとんどそこにいます。amapを使用して、 の各項目を に変換i..j Rangeし、次のArray2 つのエントリを指定します。

i,j,n = 4,8,10
a = (i..j).map { |x| [x,rand(n)] }
于 2013-07-27T14:31:37.847 に答える
1

別の答え:

i=10
j=20
n=10
[(i..j).to_a , Array.new(j-i+1){rand(n)} ].transpose
于 2013-07-27T15:04:32.937 に答える