繁体   English   中英

如何使用随机数填充数组?

[英]How do I populate an array with random numbers?

我试图填充四个元素的数组,正整数小于9。

这是我的代码:

generated_number=Array.new(4)#create empty array of size 4
generated_number.each do |random| #for each position in the array create a random number
  random=rand(10)
end
puts generated_number

我不明白我错过了什么。

你可以将范围传递给rand()

Array.new(4) { rand(1...9) }

我认为你过于复杂化了。

 generated_numbers = 4.times.map{Random.rand(8) } #=> [4, 2, 6, 8]

编辑:对于咯咯笑声我把这个功能放在一起:

def rand_array(x, max)
  x.times.map{ Random.rand(max) }
end

puts rand_array(5, 20) #=> [4, 13, 9, 19, 13]

这就是我为一个包含10个元素的数组解决它的方法:

n=10
my_array = Array.new(n)
i = 0
loop do 
 random_number = rand(n+1)
 my_array.push(random_number)

 i += 1
 break if i >= n
end

for number in my_array
  puts number

这是我在学校决赛中所做的事情,数字不完全相同,但你可以改变数字等等:

numbers_array = []
10.times do
    numbers_array.push(rand(1..100))
end
puts numbers_array

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM