尝试在循环中从输入创建数组 - Ruby

Trying to create an array from input whilst in a loop - Ruby

我正在尝试创建一个要求用户输入数字的程序,该程序一直要求用户输入数字,直到输入 "stop",此时返回数字的总和。

代码可以正常工作,但我意识到第一个 puts/gets.chomp 在循环之外,没有被添加到数组中。我不知道如何实现这个,任何帮助想法将不胜感激!

array = []

puts 'Give me a number'

answer = gets.chomp

until answer == "stop"
  puts 'Give me a number'
answer = gets.chomp
  array.push(answer)
end

array.pop

array

你有这样的情况。

do something
determine if we should stop
do something else
repeat

对于这种精细控制,请使用 loop to repeat until you break

# Initialize your list of numbers.
numbers = []

# Start a loop.
loop do
  # Get the answer.
  puts 'Give me a number'
  answer = gets.chomp

  # Stop if the user wants to stop.
  break if answer == 'stop'

  # Store the number after checking that it is a number.
  numbers.push(answer)
end

p numbers