我有代码,它将生成随机数,除非生成的随机数为0.当结果为0时,循环会中断。我如何总计在ruby中生成的随机数
因此,当循环中断时,我想要一个代码,它会继续添加保留生成的随机数并将其显示在最后。我能用红宝石做到吗?
def batting
loop do
runs = [0,1,2,3,4,5,6]
myruns = runs.shuffle.first
Newscore =
puts "Press W to hit a shot"
user_input = gets.chomp
while user_input.include? "W"
puts myruns
until myruns == 0
break
Score = Score + myruns
break
这是在Score = Score + myruns
抛出Dynamic Constant assignment
错误,我基本上认为,其错,因为myruns
保持在每生成的事件改变?
所以,我希望创建一个新的变量,将存储的总生成的所有随机数,直到产生的随机数为0
谁能帮助?
感谢你,它实际上打印多个随机数,而不是一次一个,为什么'myruns = runs.sample'创建两次?一次在'while'循环中,下一次在'until'中? –
我上面写的代码,每次按'W'时打印一个随机数。我想创建一个变量,将每次产生的随机数相加,直到myruns = 0,发布“break”并将总和加到最终分数,这样每次调用这个“def”时,它不会打扰最终的分数。为了做到这一点,我需要一个变量来存储总和而不是数组。 –
你能否更清楚地知道你需要用文字表达? –