99 garrafas de cerveja - 99 Bottles of Beer

"99 garrafas"
Canção
Gênero Folclórica

" 99 garrafas de cerveja " é uma favela anônima que data de meados do século XX. É uma música tradicional de contagem reversa tanto nos Estados Unidos quanto no Canadá. É popular para cantar em viagens rodoviárias, pois tem um formato muito repetitivo, fácil de memorizar e pode demorar muito quando as famílias cantam. Em particular, a música é freqüentemente cantada por crianças em longas viagens de ônibus escolares , como passeios de classe ou em passeios de escoteiros ou de guias femininas.

Letra da música

As letras da música são as seguintes:

Partituras para os vocais de "99 Bottles of Beer"

Linha alternativa:

Se uma dessas garrafas cair, 98 garrafas de cerveja na parede ...

O mesmo versículo é repetido, cada vez com uma garrafa a menos, até que não haja mais nenhuma. Variações sobre o último verso após a última garrafa descendo incluem linhas como:

Não há mais garrafas de cerveja na parede, não há mais garrafas de cerveja.
Vá até a loja e compre mais um pouco, 99 garrafas de cerveja na parede ...

Ou:

Não há mais garrafas de cerveja na parede, não há mais garrafas de cerveja.
Nós os pegamos e os distribuímos; agora estamos bêbados e desmaiados!

Outras linhas alternativas são:

Se aquela garrafa cair, que desperdício de álcool!

Ou:

Não há mais garrafas de cerveja na parede, não há mais garrafas de cerveja.
Não há mais nada a cair, porque não há mais garrafas de cerveja na parede.

Ou:

A música não para nas últimas garrafas de cerveja "1" ou "0", mas continua contando com −1 (uma negativa) Garrafas de cerveja na parede Pegue uma, passe-a adiante, −2 (negativa 2) garrafas de cerveja na parede ... continuando através dos números negativos

Rotina de Andy Kaufman

A natureza entediante e demorada da canção "99 Bottles of Beer" significa que provavelmente apenas uma minoria de interpretações é feita para o verso final. O comediante americano Andy Kaufman explorou esse fato na rotina no início de sua carreira, quando na verdade cantava todos os 100 versos.

Atticus

Atticus , uma banda de Knoxville, Tennessee, gravou uma versão ao vivo de treze minutos e meio da música inteira em um clube em Glasgow, Escócia, chamado The Cathouse . Foi incluído no álbum Figment de 2001 . Rich Stewart, também conhecido como Barroom Rambler, listou-a como a canção de bebida número um entre 86 em um artigo para a Modern Drunkard Magazine no ano seguinte.

Variantes de inspiração matemática

Donald Byrd reuniu dezenas de variantes inspiradas em conceitos matemáticos e escritas por ele e outros. (Um subconjunto de sua coleção foi publicado.) Byrd argumenta que a coleção tem valor pedagógico e também divertido. Entre suas variantes estão:

  • "Infinito garrafas de cerveja na parede". Se uma garrafa for retirada, ainda haverá garrafas infinitas de cerveja na parede (criando assim uma sequência interminável muito parecida com " A música que nunca termina ").
    • "Garrafas de cerveja Aleph-null na parede". Aleph-null é o tamanho do conjunto de todos os números naturais , e é o menor infinito e o único contável ; portanto, mesmo se um infinito nulo de aleph de garrafas cair, a mesma quantidade permanecerá.
    • "Aleph-one / two / three / etc. Garrafas de cerveja na parede". Aleph-um, dois, três, etc. são conjuntos infinitos incontáveis, que são maiores do que os contáveis; portanto, se apenas uma infinidade contável de garrafas cair, um número incontável permanecerá.

Outras versões da coleção de Byrd envolvem conceitos, incluindo progressões geométricas , diferenciais , identidade de Euler , números complexos , notação de soma , o conjunto de Cantor , a sequência de Fibonacci e a hipótese do contínuo , entre outros.

Referências em ciência da computação

O cientista da computação Donald Knuth provou que a canção tem uma complexidade de em seu artigo de piada " The Complexity of Songs ".

Existem vários programas de computador para produzir a letra da música. Isso é análogo a "Hello, World!" programas , com a adição de um loop . Tal como acontece com "Hello World!", Este pode ser um exercício prático para quem está estudando programação de computadores e uma demonstração de diferentes paradigmas de programação que lidam com construções de loop e diferenças sintáticas entre linguagens de programação dentro de um paradigma.

O programa foi escrito em mais de 1500 linguagens de programação diferentes.

Um exemplo simples usando sintaxe BASIC clássica :

FOR Bottle = 100 TO 1 STEP -1
 PRINT STR(Bottle) +" bottles of beer on the wall, "+ STR(Bottle) +" bottles of beer"
 PRINT "Take one down and pass it around, "+ STR(Bottle-1) +" bottles of beer on the wall"
NEXT Bottle

Outro exemplo usando C # :

for (int bottleNumber = 100; 1 < bottleNumber; bottleNumber--)
{
	Console.WriteLine("{0} bottles of beer on the wall, {0} bottles of beer", bottleNumber);
	Console.WriteLine($"Take one down and pass it around, {bottleNumber - 1} bottles of beer on the wall");		   
}
Console.WriteLine("1 bottle of beer on the wall, 1 bottle of beer");
Console.WriteLine("Take one down and pass it around, no bottles of beer on the wall");

Outro exemplo usando PHP :

$numberBottles = 99;
while ($numberBottles > 1) {
    echo $numberBottles . " bottles of beer on the wall<br>\n";
    echo $numberBottles . " bottles of beer<br>\n";
    echo "If you take one down<br>\n";
    echo "And pass it around<br>\n";
    $numberBottles = $numberBottles - 1;
    echo "There'll be " . $numberBottles . " bottles of beer on the wall.<br><br>\n";
}
    echo "Just " . $numberBottles . " bottle of beer on the wall<br>\n";
    echo "Just " . $numberBottles . " bottle of beer<br>\n";
    echo "If you take it down<br>\n";
    echo "And pass it around<br>\n";
    echo "There'll be no more bottles of beer on the wall.<br><br>\n";

Outro exemplo usando Python:

for quant in range(99, 0, -1):
   if quant > 1:
      print (quant, "bottles of beer on the wall,", quant, "bottles of beer.")
      if quant > 2:
         suffix = str(quant - 1) + " bottles of beer on the wall."
      else:
         suffix = "1 bottle of beer on the wall."
   elif quant == 1:
      print ("1 bottle of beer on the wall, 1 bottle of beer.")
      suffix = "no more beer on the wall!"
   print ("Take one down, pass it around,", suffix)

Outro exemplo usando JavaScript :

for (let bottleNum = 99; bottleNum > 0; bottleNum--) {
  if (bottleNum > 1) {
    console.log(`${bottleNum} bottles of beer on the wall, ${bottleNum} bottles of beer.`);
    if (bottleNum > 2) {
      console.log(`Take one down, pass it around, ${bottleNum - 1} bottles of beer on the wall.`);
    } else {
      console.log("Take one down, pass it around, 1 bottle of beer on the wall.");
    }
  } else if (bottleNum == 1) {
    console.log("1 bottle of beer on the wall, 1 bottle of beer.");
    console.log("Take one down, pass it around, no more beer on the wall!");
  }
}

Veja também

  • " Potje met vet " - uma canção tradicional holandesa cantada no mesmo estilo
  • " Ten Green Bottles " - uma música semelhante que é popular no Reino Unido

Referências

links externos