【发布时间】:2013-06-10 04:12:49
【问题描述】:
我的目的只是用数字从 1 到 1 到 1000 之间的随机数填充一个数组。但是,在重复运行此代码(大约 50 次)后,我得到的最高数字是 120 ,只有两次超过 100。我的大多数数组都在 0 到 60 之间。这种行为对我来说似乎很奇怪。我是不是做错了什么?
my_array = []
i = 0
while i <= rand(1000)
my_array << i
i += 1
end
puts my_array.count
puts my_array
【问题讨论】:
-
你在播种你的随机化器吗?
-
你的随机数是 while 循环中的守卫,你正在附加你认为是计数器的东西。
-
查看我的代码后......每次循环时都会运行一个新的随机数吗?如果是这样,那就可以解释为什么它如此倾向于较小的数字。如果没有人回答,我会检查并报告。
-
我希望每次评估条件时都会评估
rand(1000)。