Как вставить целые числа в массив из той же строки в ruby?

#ruby #arrays #input

#ruby #массивы #ввод

Вопрос:

Я использую следующий код для вставки значения массива из той же строки ввода

 s = Array.new(10)    
q = gets
s = q.split(' ')
  

Это работает нормально. но если я не хочу сначала сохранять переменную для сохранения и после этого разделять, а напрямую принимать входные данные в массив, используя следующий код, я потерплю неудачу.

 s = Array.new(10)
10.times do
  s.push gets.split.map(amp;:to_i)
end
  

Какой правильный код принимает целочисленные входные данные из той же строки? Нужна помощь.

Комментарии:

1. Гарантируется ли, что строка из пользовательского ввода всегда содержит ровно десять чисел?

2. Ваш первый код не имеет смысла. Вы создаете массив s и сразу же перезаписываете его.

Ответ №1:

Вам не нужно сначала объявлять массив. метод split возвращает массив, и вы можете присвоить его переменной. Это сделает

 s = gets.split(' ').map amp;:to_i