В Ruby Я ищу, чтобы создать короткую программу, в которой пользователь может ввести определенное количество слов (5 на данный момент), и программе нужно плевать слова вернуться к пользователю в алфавитном порядке, и каждое слово должно чередоваться со всеми CAPS ко всем строчным буквам.Ruby Array/Loop/.each do - Simplest Answer
Эта программа может использовать только такие методы, как (.each do, .sort, .upcase, .downcase), массивы, циклы и операторы if/else. NOTHING ELSE ... поэтому нет индексов, словарей, модулей, аргументов и т. Д. Синтаксис не должен сильно отличаться от того, что я уже написал.
Это код, который у меня есть до сих пор ... Я продолжаю получать ошибку метода ... любая помощь будет принята с благодарностью.
words = []
5.times do
puts "Please enter a word"
words << gets.chomp
end
words.sort.each do |odd, even|
if odd puts words.upcase
elsif even puts words.downcase
end
end
Что вы подразумеваете под «методами вроде»? Всякий раз, когда возникает исключение, важно идентифицировать линию, в которой оно происходит. –
'words.sort' даст вам и массив отсортированных слов. 'each' затем передает каждый элемент отсортированного массива в блок, присваивая их первой блочной переменной' odd'. Поскольку каждая строка передается каждый раз, блочная переменная 'even' всегда будет равна« nil ». Вот почему блок не работает так, как вам хотелось бы. Возможно, вам будет полезно добавить следующее в начале блока: 'puts 'odd = # {odd}, even = # {even}" '. –