克里斯·派恩学习编程红宝石8章:按字母顺序排列阵列

入门停留在第8章:

键入尽可能多的话,因为我们希望每行一个字,持续直到我们只需按Enter键在一个空行重复的话给我们按字母顺序排列。 使用“排序”

所以,在这里就是我得到了,但我有跟没有得到的第一个字推入阵[除其他外]有趣的问题

# alphabetting puts 'Tell us some of your favorite things!' # create an array words = [] while gets.chomp != '' words.push gets.chomp words.sort puts words end

这样做和现在的工作......我必须有“东西”在那里有关系吗? 似乎调皮一个',而'循环中分配。

puts 'Tell us some of your favorite things!' words = [] puts words while (thing = gets.chomp) != '' words.push thing end puts words.sort

--------------解决方案-------------

您的第一个gets的呼叫不被任何引用,并抛出。 这不仅是第一个字,但丢在外面了是怎么回事其他单词。 输出程序也应该是外循环。 一个修复程序:

words = []
while word = gets.chomp and not word.empty?
words.push(word)
end
puts words.sort

尝试这个:

puts 'Tell us some of your favorite things!'

words = []
while line = STDIN.gets
line = line.chomp
break if line.empty?
words << line.chomp
end

words = words.sort

words.each {|word| puts word }

分类:红宝石 时间:2015-03-15 人气:3
本文关键词: 红宝石,整理
分享到:

相关文章

Copyright (C) 55228885.com, All Rights Reserved.

55228885 版权所有 京ICP备15002868号

processed in 0.298 (s). 10 q(s)