使用终端运行时Ruby方法输出受限制

时间:2014-04-23 01:12:06

标签: ruby terminal ubuntu-12.04

我在这个问题上摸不着头脑,我是红宝石的新手,并一直跟着克里斯派恩斯的书。一次练习让我们重新编写了一瓶#99; 99瓶啤酒"程序,但这次使用的方法。问题是当我运行代码时,如果参数大于255,我只得到#255; 255瓶啤酒"。我附上了代码。这是我写的第一种方法,所以可能不是最漂亮的东西。

def bottles num
if num < 0 # Making sure a positive is entered.
    return 'Please enter positive bottle count'
end
while num > 0 
    puts num.to_s + ' bottles of beer on the wall, ' + num.to_s + ' bottles of beer'
    num = num - 1 # Taking away a bottle.
    puts 'take one down, pass it around, ' + num.to_s + ' bottles of beer on the wall.'
end

if num == 0
    puts 'Ut-oh, out of beer...'
end
end

bottles 1000

所以当它在终端运行时,输出就像这样:

墙上挂着255瓶啤酒,255瓶啤酒 拿下一个,将它传递给墙壁上的254瓶啤酒。 墙上挂着254瓶啤酒,254瓶啤酒 拿下一个,将它传递到墙上,253瓶啤酒。

谢谢!

1 个答案:

答案 0 :(得分:-1)

也许回滚缓冲区在您的终端中很小。检查this