Я новичок в Ruby. Я пытаюсь выучить dos и don'ts, делая небольшие программы. Эта программа немного избыточна, но я хочу лучше себя с синтаксисом языка.Тип Ошибка - нет неявного преобразования из nil в integer - Создание массива
В любом случае, поэтому я пытаюсь создать небольшую программу, которая будет запрашивать у пользователя количество людей. Тогда количество людей будет ссылаться на размер массива, тогда программа попросит пользователя ввести имена для каждого элемента в массиве (которые ВСЕ будут «нулевыми» значениями, поскольку элементы нового массива будут пустыми). Наконец, я хотел бы распечатать массив на консоли, чтобы увидеть завершенные элементы.
Однако, я получаю сообщение об ошибке «Строка 10: TypeError произошла. Неявное преобразование из нуля в целое». Мой код не выполнен на 100%. Я все еще пытаюсь добавить к нему больше вещей, но сначала хочу устранить эту ошибку, прежде чем я начну это делать. Кто-нибудь, кто хочет помочь мне?
Вот код
def Array_Maker
puts "How many people would you like to enter? : "
num = gets.chomp.to_i
nameArray = Array.new(num)
puts "\nEnter the names of the people you wish to add: "
nameArray.each do |x|
nameArray[x] = gets.chomp.to_s
end
nameArray.each do |x|
puts x
end
end
Array_Maker()
Я, вероятно, делать все это неправильно, но я стараюсь ...
Вы можете написать 'gets.chomp.to_i' как' gets.to_i' и так 'gets.chomp' является строкой, то' '.to_s' в gets.chomp.to_s' имеет нет эффекта. –