【问题标题】:Ruby Countdown loop Learn LabRuby 倒计时循环学习实验室
【发布时间】:2019-12-10 14:55:25
【问题描述】:

我目前正在实验室中使用 while 循环和减法/赋值运算符创建倒数计时器。到目前为止,我的循环计数为 10 并中断为 0 并打印我的字符串“Happy New Year”。我不确定为什么它没有从 10 迭代到 0。链接到实验室和下面的代码 https://learn.co/tracks/online-software-engineering-structured/procedural-ruby/looping/countdown-to-midnight-lab

number = 10
 while number > 0
   puts "#{number} SECOND(S)!"
   number -= 1
 break if n <= 0
 puts "HAPPY NEW YEAR!"  
end
end


【问题讨论】:

  • 你真的应该正确缩进你的代码。然后你也会更快地看到问题。您总是在end 语句中降低缩进级别。如果两个end 语句处于同一缩进级别(就像您在代码中使用的那样),那么您可能做错了什么。此外,如果缩进减少而没有靠近 end 语句(就像它在您的代码中所做的那样),那么您也可能做错了什么。

标签: ruby while-loop


【解决方案1】:
  • end 太多了。适当的缩进可以告诉你。
  • puts "HAPPY NEW YEAR!" 应该是最后一行,在循环之外(并且可能没有puts)。
  • n 应该是 number

该任务采用返回字符串的方法的形式。 puts 但返回 nil

【讨论】:

    猜你喜欢
    • 2016-11-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-10-08
    • 1970-01-01
    相关资源
    最近更新 更多