У меня есть код, который будет генерировать случайные числа, если только сгенерированное случайное число не равно 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
Это бросает Dynamic Constant assignment
ошибку в Score = Score + myruns
, которые я в принципе думаю, его неправильно, так как myruns
постоянно меняются при каждом генерируемой случае?
Итак, я хотел бы создать новую переменную, которая будет хранить сумму всех случайных чисел, пока генерируется случайное число не равно 0.
Может кто-нибудь помочь?
Благодарим за это, он на самом деле печатает несколько случайных чисел, а не по одному за раз и почему «myruns = runs.sample» создан дважды? один раз в цикле 'while' и в следующий раз в' до '? –
Код, который я написал выше, печатает одно случайное число каждый раз, когда вы нажимаете 'W'. Я хотел создать переменную, которая складывала бы случайные числа, генерируемые каждый раз, до тех пор, пока myruns = 0, не опубликуйте «break» и не добавьте сумму в итоговый балл, так что каждый раз этот 'def' вызывается, это не мешает окончательному счету. Для этого мне понадобится переменная, которая хранит сумму, а не массив. –
Не могли бы вы быть более ясными, что вам нужно, чтобы просто на словах? –