Arrays 在大写和小写之间交替

Arrays 在大写和小写之间交替,arrays,ruby,Arrays,Ruby,我试图让用户输入一个单词五次,并在每一行上交替使用大写和小写字母,而不使用each_with_index方法。我还试着按字母顺序排列答案。以下是我所做的: words = [] 5.times do puts "Please enter a word:" words << gets.chomp end words.each do |word| if words.even? puts words.downcase elsif words.odd?

我试图让用户输入一个单词五次,并在每一行上交替使用大写和小写字母,而不使用
each_with_index
方法。我还试着按字母顺序排列答案。以下是我所做的:

words = []

5.times do
  puts "Please enter a word:"
  words << gets.chomp
end

 words.each do |word|
   if words.even?
     puts words.downcase
   elsif words.odd?
     puts words.upcase
   end
 end
words=[]
5.5倍
放入“请输入一个单词:”
单词试试这个

words = []
sorted_words = []

5.times do
  puts "Please enter a word:"
  words << gets.chomp
end

words.sort!.each do |w|
  if words.index(w).even?
    sorted_words << w.downcase
  else
    sorted_words << w.upcase
  end
end
p sorted_words
words=[]
已排序的单词=[]
5.5倍
放入“请输入一个单词:”
单词试试这个

words = []
sorted_words = []

5.times do
  puts "Please enter a word:"
  words << gets.chomp
end

words.sort!.each do |w|
  if words.index(w).even?
    sorted_words << w.downcase
  else
    sorted_words << w.upcase
  end
end
p sorted_words
words=[]
已排序的单词=[]
5.5倍
放入“请输入一个单词:”

谢谢你的帮助。我还有一个问题。如何按字母顺序对最终结果进行排序?您必须定义空数组,然后在此数组中添加您的值,然后使用
sort
感谢您的帮助。我还有一个问题。如何按字母顺序对最终结果进行排序?您必须定义空数组,然后在此数组中添加您的值,然后使用
排序
我正要发布相同的
循环
解决方案“以@CarySwoveland为荣。”我应该知道我太慢了!我正要发布相同的
循环
解决方案“以纪念@CarySwoveland。”我应该知道我太慢了!
words = Array.new(5){puts "Please enter a word:"; gets.chomp}
words.inject(false){|up, word| puts word.send(up ? :upcase : :downcase); !up}
words = []
sorted_words = []

5.times do
  puts "Please enter a word:"
  words << gets.chomp
end

words.sort!.each do |w|
  if words.index(w).even?
    sorted_words << w.downcase
  else
    sorted_words << w.upcase
  end
end
p sorted_words