How to resolve the algorithm 99 bottles of beer step by step in the Quackery programming language

Published on 12 May 2024 09:40 PM

How to resolve the algorithm 99 bottles of beer step by step in the Quackery programming language

Table of Contents

Problem Statement

Display the complete lyrics for the song:     99 Bottles of Beer on the Wall.

The lyrics follow this form: ... and so on, until reaching   0     (zero). Grammatical support for   1 bottle of beer   is optional. As with any puzzle, try to do it in as creative/concise/comical a way as possible (simple, obvious solutions allowed, too).

Let's start with the solution:

Step by Step solution about How to resolve the algorithm 99 bottles of beer step by step in the Quackery programming language

Source code in the quackery programming language

  [ stack ]                     is bottles      (         --> [       )

  [ join carriage join ]        is addline      (     $ $ --> $       )

  [ dup 0 = iff $ 'No more'
    else [ dup number$ ]
    $ ' bottle' join
    swap 1 != if [ char s join ]
    $ ' of beer ' join ]        is beers        (       n --> $       )

  $ 'on the wall'               is wall         (         --> $       )

  $ 'Take one down, pass it around'
                                is drink        (         --> $       )

  $ 'Go to the store, buy some more'
                                is restock      (         --> $       )

  [ dup beers wall addline
    over beers addline
    over 0 = iff
      [ nip bottles share
        swap restock ]
    else drink addline
    swap 1 -
    beers wall join addline ]   is verse        (       n --> $       )

  [ 1+ $ '' swap
    dup bottles put
    times [ i verse addline ]
    bottles release ]           is song         (       n --> $       )

  say 'The song "99 Bottles of Beer on the Wall":' cr cr
  99 song echo$

  

You may also check:How to resolve the algorithm Jacobi symbol step by step in the Mathematica / Wolfram Language programming language
You may also check:How to resolve the algorithm Euclid-Mullin sequence step by step in the Java programming language
You may also check:How to resolve the algorithm Sorting algorithms/Bogosort step by step in the M4 programming language
You may also check:How to resolve the algorithm Dragon curve step by step in the X86 Assembly programming language
You may also check:How to resolve the algorithm Digital root step by step in the Pascal programming language