4

So I have an array. I want to take the first elements and break them into new line. So my array is =

a = [0, 0, 0, 0, 0, 0, 0, 0 , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0] 

How do I print it as

00000
00000
00000
00000
00000

Thanks.

4

3 に答える 3

12

Enumerator クラスのメソッドを使用してeach_slice、元の配列をそれぞれ 5 つの要素で構成される配列に分割しjoin、Array クラスのメソッドを使用して 5 つの要素の配列を文字列に変換します。

a.each_slice(5) { |x|
  puts x.join
}
于 2013-02-27T15:13:14.633 に答える
1
a = (1..25).to_a    
(a.size / 5).times {|i| puts a.slice(i*5, 5).join}

12345
678910
1112131215
1617181920
2122232425

Array#sliceインデックスと長さを取ります。この場合、5 つの要素ごとに、5 つの要素の一部を切り出します。Array#join次に、それらの要素を取得して、それらを文字列にまとめます。

于 2013-02-27T15:07:44.803 に答える
1
a.each_index do |i|
  puts if i%5 == 0
  print a[i]
end
于 2013-02-27T14:55:16.250 に答える