跳转到内容

99瓶啤酒

本页使用了标题或全文手工转换
维基百科,自由的百科全书

99瓶啤酒》(99 Bottles of Beer)是一首作者不详的民謠,20世纪中叶起在美国和加拿大流傳。歌曲從99瓶啤酒開始倒數,它的歌词重复,很容易就能记住,可以唱很久來打發時間。因此它在长途旅行中很受欢迎,例如班级旅遊,或是童子军的活动中。这首歌源于英国儿歌“十个绿色的瓶子英语Ten green bottles”。

歌词

[编辑]

这首歌的歌词如下:[1][2]

99瓶啤酒在墙上,99瓶啤酒在牆上。拿走一瓶傳下去,98瓶啤酒在墙上……

同样的乐句不断重复,每次减少一个瓶子,直到一个也不剩。最后一节、最后一个瓶子之后的部分有不同的唱法:

墙上没有啤酒了,牆上没有啤酒了。再去商店多买些,99瓶啤酒在墙上……

或是:

墙上没有啤酒了,牆上没有啤酒了。我們喝光傳完了,現在就要醉倒了!

另一种唱法是:

如果這瓶摔破了,真是浪费酒精呢!

具有数学灵感的变体

[编辑]

唐納德伯德(Donald Byrd)收集了許多受數學啟發的歌詞變體,他認為這些歌詞具有教育與娛樂用途[3]。下面列舉幾項:

  • “无穷多瓶啤酒在墙上”。如果拿下一瓶,仍有无穷多瓶啤酒在墙上(从而创造一个永無止境的序列,更像"The Song That Never Ends英语The Song That Never Ends")。
    • “阿列夫0數瓶啤酒在墙上”。阿列夫零自然数集的,并且是最小的、唯一一个可数的无穷大;因此,即使偶数编号的啤酒掉下来,其数量为阿列夫零,剩下的还是阿列夫零。
    • “阿列夫1/2/3/...數瓶啤酒在墙上”。阿列夫1/2/3/...數是不可数的无穷集合,它是大于可数无穷集合的;因此,如果只有可数无穷多瓶啤酒掉了下来,啤酒数仍然是不可数的。

计算机科学中的体现

[编辑]

Python

[编辑]

Python的内置库中,有一个示例程序/Tools/demo/beer.py, 运行该程序会在标准输出中得到99瓶啤酒的一个版本,也可以通过命令行让其输出任意瓶啤酒。

另见

[编辑]

参考资料

[编辑]