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瓶啤酒的一個版本,也可以通過命令行讓其輸出任意瓶啤酒。

另見

編輯

參考資料

編輯