"99 botellas" | |
---|---|
Canción | |
Género | Gente |
" 99 Bottles of Beer " es una chabola marina anónima que data de mediados del siglo XX. Es una canción tradicional de conteo inverso tanto en los Estados Unidos como en Canadá. Es popular cantar en los viajes por carretera, ya que tiene un formato muy repetitivo, fácil de memorizar y que puede llevar mucho tiempo cuando las familias cantan. En particular, los niños suelen cantar la canción en viajes largos en autobús escolar , como excursiones escolares o en excursiones Scout o Girl Guide .
¿Problemas al reproducir este archivo? Consulte la ayuda de medios . |
La letra de la canción es la siguiente: [1] [2]
Línea alternativa: [3]
Si llegara a caer una de esas botellas, 98 botellas de cerveza en la pared ...
Se repite el mismo verso, cada vez con una botella menos, hasta que no queda ninguna. Las variaciones en el último verso que sigue a la última botella que bajan incluyen líneas como:
No más botellas de cerveza en la pared, no más botellas de cerveza.
Ve a la tienda y compra algunas más, 99 botellas de cerveza en la pared ...
O:
No más botellas de cerveza en la pared, no más botellas de cerveza.
Los hemos bajado y los hemos pasado; ahora estamos borrachos y desmayados!
Otras líneas alternativas dicen:
Si esa botella llegara a caerse, ¡qué desperdicio de alcohol!
O:
No más botellas de cerveza en la pared, no más botellas de cerveza.
No hay nada más que caer, porque no hay más botellas de cerveza en la pared.
O:
La canción no se detiene en las últimas botellas de cerveza "1" o "0", sino que continúa contando con -1 (Negativo uno) Botellas de cerveza en la pared Toma una, pásala, -2 (negativo 2) botellas de cerveza en la pared ... continuando hacia adelante a través de los números negativos
La naturaleza aburrida y lenta de la canción "99 Bottles of Beer" significa que probablemente solo una minoría de interpretaciones se hace hasta el último verso. [ cita requerida ] El comediante estadounidense Andy Kaufman aprovechó este hecho en la rutina al principio de su carrera cuando cantaba los 100 versos. [4]
Atticus , una banda de Knoxville, Tennessee, grabó una versión en vivo de trece minutos y medio de la canción en su totalidad en un club en Glasgow, Escocia, llamado The Cathouse . Fue incluido en el álbum Figment de 2001 . Rich Stewart, alias Barroom Rambler, la incluyó como la canción para beber número uno de 86 en un artículo para Modern Drunkard Magazine el año siguiente. [5]
Donald Byrd ha recopilado decenas de variantes inspiradas en conceptos matemáticos y escritas por él mismo y otros. [6] (Se ha publicado un subconjunto de su colección. [7] ) Byrd sostiene que la colección tiene un valor tanto pedagógico como divertido. Entre sus variantes están:
Otras versiones en la colección de Byrd involucran conceptos que incluyen progresiones geométricas , diferenciales , identidad de Euler , números complejos , notación sumatoria , el conjunto de Cantor , la secuencia de Fibonacci y la hipótesis del continuo , entre otros.
El científico informático Donald Knuth demostró que la canción tiene una complejidad de en su artículo de broma " La complejidad de las canciones ". [8]
Existen numerosos programas de computadora para generar la letra de la canción. Esto es análogo a "¡Hola, mundo!" programas , con la adición de un bucle . Al igual que con "¡Hola mundo!", Este puede ser un ejercicio de práctica para aquellos que estudian programación de computadoras y una demostración de diferentes paradigmas de programación que tratan con construcciones de bucle y diferencias sintácticas entre lenguajes de programación dentro de un paradigma.
El programa ha sido escrito en más de 1500 lenguajes de programación diferentes. [9]
Un ejemplo simple usando la sintaxis BASIC clásica :
PARA Botella = 100 A 1 PASO -1 IMPRIMIR STR ( Botella ) + "botellas de cerveza en la pared", + STR ( Botella ) + "botellas de cerveza" IMPRIMIR "Toma una y pásala," + STR ( Botella -1 ) + "botellas de cerveza en la pared" SIGUIENTE Botella
Otro ejemplo usando C # :
for ( int bottleNumber = 100 ; 1 < bottleNumber ; bottleNumber -) { Console . WriteLine ( "{0} botellas de cerveza en la pared, {0} botellas de cerveza" , bottleNumber ); Consola . WriteLine ( $ "Toma una y pásala, {bottleNumber - 1} botellas de cerveza en la pared" ); } Consola . WriteLine ( "1 botella de cerveza en la pared, 1 botella de cerveza" ); Consola . WriteLine ("Tome uno y páselo, no hay botellas de cerveza en la pared" );
Otro ejemplo usando PHP :
$ numberBottles = 99 ; while ( $ numberBottles > 1 ) { echo $ numberBottles . "botellas de cerveza en la pared <br> \ n " ; echo $ numberBottles . "botellas de cerveza <br> \ n " ; echo "Si quitas uno <br> \ n " ; echo "Y pásalo por <br> \ n " ; $ numberBottles = $ numberBottles - 1 ; echo "Habrá" . $ numberBottles . "botellas de cerveza en la pared. <br> <br> \ n " ; } echo "Solo" . $ numberBottles . "botella de cerveza en la pared <br> \ n " ; echo "Solo" . $ numberBottles . "botella de cerveza <br> \ n " ; echo "Si lo quitas <br> \ n " ; echo "Y pásalo por <br> \ n " ; echo "No habrá más botellas de cerveza en la pared. <br> <br> \ n ";
Otro ejemplo usando Python:
para quant en gama ( 99 , 0 , - 1 ): si quant > 1 : impresión ( quant , "botellas de cerveza en la pared," , quant , "botellas de cerveza." ) si quant > 2 : sufijo = str ( quant - 1 ) + "botellas de cerveza en la pared". else : suffix = "1 botella de cerveza en la pared". elif cuant == 1 : print ( "1 botella de cerveza en la pared, 1 botella de cerveza." ) Sufijo = "¡no más cerveza en la pared!" print ( "Tome uno, páselo" , sufijo )
Otro ejemplo usando JavaScript :
for ( let bottleNum = 99 ; bottleNum > 0 ; bottleNum - ) { if ( bottleNum > 1 ) { console . log ( ` $ { bottleNum } botellas de cerveza en la pared, $ { bottleNum } botellas de cerveza` ); if ( bottleNum > 2 ) { console . log ( `Toma uno, pásalo, $ {bottleNum - 1 } botellas de cerveza en la pared. ' ); } else { consola . log ( "Toma uno, pásalo, 1 botella de cerveza en la pared" ); } } else if ( bottleNum == 1 ) { console . log ( "1 botella de cerveza en la pared, 1 botella de cerveza" ); consola . log ( "¡Toma uno, pásalo, no más cerveza en la pared!" ); } }