我的目标是创建一个数组,其中包含一组骰子上2个数字的每个组合的总和。我正在创建一个循环的开始,在经过die1[0]之前将die2[0..5]添加到die1[1] + die2[0..5]中。
我有下面的代码,我做错了。我希望能够调用数组中的特定数字,例如dieSums[4],并获得一个数字。你知道我在这里做错了什么吗?

die1 = [1,2,3,4,5,6]
die2 = [1,2,3,4,5,6]

dieSums = []

count = 0
while count <= 5 do
  dieSums << die1[0] + die2[count]
  count += 1
  puts dieSums[5]
end

最佳答案

您正在循环内调用puts dieSums[5]dieSums[5]在最后一次迭代之前不存在。如果你在循环之外调用它,它就会工作:

die1 = [1,2,3,4,5,6]
die2 = [1,2,3,4,5,6]

dieSums = []

count = 0
while count <= 5 do
  dieSums << die1[0] + die2[count]
  count += 1
end

puts dieSums[5] #=> 7

10-07 12:46