Codecademy Ruby课程:控制流技术诀窍

时间:2015-10-30 13:42:12

标签: ruby

在Ruby编码时,我想出了一个错误,即需要说出用户输入的所有单词。我试图更改我的代码以使其输出,但问题仍然存在。这是我的代码和Ruby指令。

说明 在.each中添加if / else语句。

如果当前单词等于要编辑的单词,则打印"删除"有额外的空间。 否则(否则),打印字+" &#34 ;. 两种情况下的额外空间都会阻止单词一起运行。

    puts text = gets.chomp
    puts redact = gets.chomp
    words = text.split(" ")
    words = ['hi', 'hello', 'what', 'why']
    words.each do |word|
       if gets = words
          print "Redact "
     else

          print word + "Incorrect"
     end
   end

我说我的代码问题是......哎呀,再试一次。确保将用户文本中的每个单词打印到控制台,除非该单词是要编辑的单词;如果是,请打印删除(全部大写!)。

非常感谢所有帮助,谢谢。

2 个答案:

答案 0 :(得分:0)

对不起,这些家伙并没有太多帮助。 :D已经过了一段时间,但我希望这会有所帮助。在第一部分标题为"你将要建造什么" Codecademy为您提供了本节最后一个问题的确切示例(答案)。这总是正确的,并可能在将来有所帮助。你在寻找什么:

puts "Text to search through: "
text = gets.chomp
puts "Word to redact: "
redact = gets.chomp

words = text.split(" ")

words.each do |word|
    if word != redact
        print word + " "
    else
    print "REDACTED "
   end
end

答案 1 :(得分:0)

我已经过去了几年,但是我想过去,让我自己解决这个问题。

puts "Text to search through: "
text = gets.chomp
puts "Word to redact: "
redact = gets.chomp

words = text.split(',')  # "," is necessary to identify each of the words
words.each do |x|
  if x == redact  # if words repeat, print REDACTED
    print "REDACTED"
  else  # else, only write de word and space
    print x + " "
  end
end