回答編集履歴
2
修正
answer
CHANGED
@@ -29,4 +29,35 @@
|
|
29
29
|
ランダムに10人とって配列を作って、その配列を回しながら各々に
|
30
30
|
その配列を表示するというのはどうでしょうか。
|
31
31
|
|
32
|
-
10人表示するために11人を選択しています。
|
32
|
+
10人表示するために11人を選択しています。
|
33
|
+
|
34
|
+
元の配列を減らしながら表示させるバージョン。
|
35
|
+
```Ruby
|
36
|
+
# encoding: utf-8
|
37
|
+
|
38
|
+
class Kako
|
39
|
+
def show(arr)
|
40
|
+
while arr.size > 0
|
41
|
+
arr.shuffle!
|
42
|
+
name_list = arr.shift(11)
|
43
|
+
work(name_list)
|
44
|
+
end
|
45
|
+
end
|
46
|
+
|
47
|
+
private
|
48
|
+
|
49
|
+
def work(array)
|
50
|
+
array.each_with_index do |name, i|
|
51
|
+
list = []
|
52
|
+
array.each_with_index do |a, b|
|
53
|
+
list << a unless b == i
|
54
|
+
end
|
55
|
+
puts "#{name}さんのリストです。#{list.map { |e| e.to_s + 'さん' }.join(', ')}"
|
56
|
+
end
|
57
|
+
end
|
58
|
+
end
|
59
|
+
|
60
|
+
k = Kako.new
|
61
|
+
k.show((0..1234).to_a)
|
62
|
+
|
63
|
+
```
|
1
修正
answer
CHANGED
@@ -8,7 +8,7 @@
|
|
8
8
|
name_list.each_with_index do |name, i|
|
9
9
|
list = []
|
10
10
|
name_list.each_with_index do |e, n|
|
11
|
-
list << e unless n
|
11
|
+
list << e unless n == i
|
12
12
|
end
|
13
13
|
puts "#{name}さんのリストです。#{list.map { |e| e + 'さん' }.join(', ')}"
|
14
14
|
end
|