I am sure this is the shortest code for 99 bottles of beer

From Esolang
Jump to navigation Jump to search

Introduction

I am sure this is the shortest code for 99 bottles of beer is a joking language, there are no characters in this language.

Example

99 Bottles of Beer


Interpreter

C++

#include <bits/stdc++.h>
using namespace std;
#define int long long

signed main() {
	for (int i = 99; i >= 2; i--) {
		cout << i << " bottles of beer on the wall, " << i << " bottles of beer." << endl;
		cout << "Take one down and pass it around, " << i - 1 << " bottle of beer on the wall." << endl << endl;
	}
	cout << "1 bottle of beer on the wall, 1 bottle of beer." << endl;
	cout << "Take one down and pass it around, no more bottles of beer on the wall." << endl << endl;
	cout << "No more bottles of beer on the wall, no more bottles of beer. " << endl;
	cout << "Go to the store and buy some more, 99 bottles of beer on the wall." << endl;
}

Python

list1 = list(range(1,100))
list1.reverse()
for i in list1:
    print(i,'bottles of beer on the wall, ',i,' bottles of beer.')
    if i == 1:
        print('Go to the store and buy some more, 99 bottles of beer on the wall.')
    else:
        print('Take one down and pass it around, ',i-1,' bottles of beer on the wall.\n')

Scratch

Totals: 
    Sprites: 1
    Stacks: 3
    Unique costumes: 2
    Unique sounds: 0
--------
Sprite: Stage
  Costumes (1):
    brick-wall1 (480x360)
  Sounds (0):
  Stacks (1):
    when green flag clicked
        set bottles to 99
        forever 
            broadcast "sing" and wait
    end
--------
Sprite: Sprite1
  Costumes (1):
    bottle_of_beer (21x82)
  Sounds (0):
  Stacks (2):
    when I receive "sing"
        broadcast "bottles" and wait
        if bottles = 1 
            say bottle of beer on the wall, for 1.5 secs
        else
            say bottles of beer on the wall, for 1.5 secs
        broadcast "bottles" and wait
        if bottles = 1 
            say bottle of beer. for 1.5 secs
        else
            say bottles of beer. for 1.5 secs
        if bottles = 0 
            say Go to the store and buy some more, for 2 secs
            set bottles to 99
        else
            say Take one down and pass it around, for 2 secs
            change bottles by -1
        broadcast "bottles" and wait
        if bottles = 1 
            say bottle of beer on the wall. for 2 secs
        else
            say bottles of beer on the wall. for 1.5 secs
        wait 0.5 secs
        stop script
    end

    when I receive "bottles"
        if bottles = 0 
            say No more for 0.66 secs
        else
            say bottles for 0.66 secs
        stop script
    end

--------

Ruby

class Integer # The bottles
  def drink; self - 1; end
end

class << song = nil
  attr_accessor :wall

  def bottles
    (@bottles.zero? ? "no more" : @bottles).to_s <<
      " bottle" << ("s" unless @bottles == 1).to_s
  end
  
  def of(bottles)
    @bottles = bottles
    (class << self; self; end).module_eval do
      define_method(:buy) { bottles }
    end
    self
  end
  
  def sing(&step)
    puts "#{bottles.capitalize} of beer on the wall, #{bottles} of beer."
    if @bottles.zero?
      print "Go to the store buy some more, "
      step = method :buy
    else
      print "Take one down and pass it around, "
    end
    @bottles = step[@bottles]
    puts "#{bottles} of beer on the wall."
    puts "" or wall.call unless step.kind_of? Method
  end

end

Brainfuck(Bottle-shaped)


                +>+++++++[>>>+++
                 +++++<<<<+++++
               +++>-]+++++++++>>>
                +>>++++++++++[>+
                 +++++++++<-]>[
                 >>+>+>+>+>+>+>
                 +>>+>+>>+>+>+>
                 +>>+>+>>+>+>+>
                 >+>+>+>+>>>>>+
                 >+>+>+>>+>+>+>
                 >+>+>+>+>>+>+>
                +>>+>+>+>+>>+>+>
                >+>+>+>+>+>+>>>>
                +>+>>+>+>+>+<<<<
                <<<<<<<<<<<<<<<<
               <<<<<<<<<<<<<<<<<<
               <<<<<<<<<<<<<<<<<<
               <<<<<<<<<<<<<<<<<<
               -]<++++[>++++++++<
               -]>[>+>>>>>>>>+>>>
               +>>>>>+>>>+>>>>+>>
              >>>+>+>>+>>>>>+>>>>+
              >>>>>+>>>>+>>>>>+>>>
              +>>>>>>>+>+>+>>>+>>>
              >>+<<<<<<<<<<<<<<<<<
              <<<<<<<<<<<<<<<<<<<<
             <<<<<<<<<<<<<<<<<<<<<<
            <<<<<<<<<<<<<<<<-]+++++[
           >>>++>+++>+++>++>>+++>>++>
          >>>>>+++>>++>++>>+++>+>>>+++
        +>->++>++>++>+++>++>>--->->+>>>+
       +>++>>>>++>++++>++>>->++>>>++>->++
     +>+++>>+>+++>>>+++>++>+++>++>>>++>>++>
    ++>>++>++>+++<<<<<<<<<<<<<<<<<<<<<<<<<<<
   <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
  <<<<-]>>-->+>+>+>-->+>>>+>++>>-->+>+>->>+>>>
  +>->+>>->++>-->-->++>->>>->++>++>+>>+>>+>>>+
 >->>>++>>>>++>++>>>>>+>>++>->+>++>>>>+++>>>+>>
 ->+>->+<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<[>>>>++
++++++++[->[-]+>[-]<<[<<<<<.>>>>.>>>>.>.>.>.>.>.
>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>>
>.<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<.>>>>.>
>>>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>>>>>>>>>>>>>>
.>.>>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.
>.>.>.>.>.>.>.>.>.>.>.>.>.<<<<<<<<<<<<<<<<<<<<<<
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
<<<<.>>>>-.>>>>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.
>.>.>.>.>.>.>.>.>.>.>.>>.>..<<<<<<<<<<<<<<<<<<<<
<<<<<<<<<<<<-]>[<<<<<->[-]+>[-]<<[<.>>>>.>>>>.>.
>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.
>.>.>.>>>.<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
<.>>>>.>>>>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>>>>>>
>>>>>>>>.>.>>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.
>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.<<<<<<<<<<<<<<
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
<<<<<<<<<<<<-.>>>>+++++++++.>>>>.>.>.>.>.>.>.>.>
.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>>.>..<<<
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<-]>[<<.>>>>.>>>
>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.
>.>.>.>.>.>>>.<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
<<<<<.>>>>.>>>>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>>
>>>>>>>>>>>>.>.>>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.
>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.<<<<<<<<<<
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
<<<<<<<<<<<<+++++++++.>>>>.>.>.>.>.>.>.>.>.>.>.>
.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>>.>..<<<<<<<<<
<<<<<<<<<<<<<<<<<<<<<<<<<<<->]<<+>>>>>->]<<]<<<<
-]>>>>++++++++[->[-]+>[-]<<[<.>>>>.>.>.>.>.>.>.>
.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>>>.<
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<.>>>>.>.>.>.>.
>.>.>.>.>.>.>.>.>.>.>.>>>>>>>>>>>>>>.>.>>.>.>.>.
>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.
>.>.>.>.>.>.>.<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<-.>>>>.>.>.>
.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>
.>>.>..<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<-]>[<<.>>
>>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>
.>.>.>.>.>.>>>.<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
<<.>>>>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>>>>>>>>>>
>>>>.>.>>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.
>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.<<<<<<<<<<<<<<<<<<
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
<<<<-.>>>>.>.>.>.>.>.>.>>.>.>.>.>.>.>.>.>.>.>.>.
>.>.>.>.>.>.>.>.>>.>..<<<<<<<<<<<<<<<<<<<<<<<<<<
<<<<<<->]<<]<.>>>>.>.>.>.>.>.>.>>.>.>.>.>.>.>.>.
>.>.>.>.>.>.>.>.>.>.>.>.>.>>>.<<<<<<<<<<<<<<<<<<
<<<<<<<<<<<<<<<<<.>>>>.>.>.>.>.>.>.>>.>.>.>.>.>.
>.>.>>>>>>>>>>>>>>.>.>>.>.>.>.>.>.>.>.>.>.>.>.>.
>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.
>.>.>.>.>.<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<.>.>.>.>.>.>.
 >.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>>.>

Brainfuck

Initialization
++    Counter for loop (a)
>+    unused
>++   Counter for loop (b)
>     Flag for 'no more'
>+    Flag for not 'no more'
>>>   (5) to (7) : temporary values
++++++++++[->+>+>++++++++++<<<]>>>    10 10 100 in (8) (9) (10)
>++++++++++   10 in (11)
[-
   >+++++           50  in (12)
   >++++++++++      100 in (13)
   >+++++++++++     110 in (14)
   >++++++++        80  in (15)
   >++++++++        80  in (16)
   >+++             30  in (17)
   >++++            40  in (18)
   >+               10  in (19)
   <<<<<<<<]
+
>-- +             48  '0'   plus 1 in (12)
>++ +             102 'f'   plus 1 in (13)
>+++++ +          115 's'   plus 1 in (14)
>-- +             78  'N'   plus 1 in (15)
>++++ +           84  'T'   plus 1 in (16)
>++ +             32  ' '   plus 1 in (17)
>++++ +           44  comma plus 1 in (18)
> +               10  LF    plus 1 in (19)

stuff for writing parts of the song
>+   select stuff
>+   select stuff
>+   write song part 3
>++  write song part 1
>+   write song part 2
>+   Flag for 'end of song'
>++  Flag for not 'end of song'

All bytes are at val plus 1
Go back to (7) with final initialization step (remove 1 to all bytes)
[-<]

<<<<<<< at (0)
[ loop (a)
-

>> at (2)
[ loop (b)

  >>>>>>>> at (10)
  [ start loop

    <<<<<<< at (3)
    [->[-]
      print '(N|n)o more'
      >>>>>>>>>>>.  '(N|n)'
      <----.        'o'
      >>>.          ' '
      <<<--.        'm'
      ++.           'o'
      +++.+         'r'
      <-.+          'e'
      <<+<<<<<<<<
    ]+> at (4)
    [-<[-]>>>>> at (9)
      prints number (using (9) and (10))
      [>>>+<<<<+<+<+>>>-]<<<[->>>+<<<]> at (6)
      [>>>>>>+<<<<<<-]>>>>>[[-]>.<]<<<<[>>>>>-<<<<<-]>> at (9)
      [<<+<+<+>>>>-]<<<<[->>>>+<<<<]> at (6)
      [>>>>>>+<<<<<<-]>>>>>>.<<<<<[>>>>>-<<<<<-] at (7)

      memorize in (11) if (10) not 1
      >>>[-<<<+<+>>>>]<<<<[->>>>+<<<<]>-[[-]>>>>+<<<<]<<< at (4)
    ]+

    >>>>>>>> at (12)
    print ' bottle(s) of beer'
    >>>>>.      ' '
    <<<<----.    'b'
    >----.       'o'
    +++++..-     'tt'
    <++++++++++. 'l'
    -------.     'e'
    <<[[-]>>>.<<<]>> 's' if (11)==1 ie if (10)!=1
    >>>>.        ' '
    <<<----.     'o'
    <+.          'f'
    >>>>.        ' '
    <<<<----.    'b'
    +++..+       'ee'
    >+++.+       'r'

    [>] at (20)

    +>+>[->+<<-<-
         print ' on the wall' DOT LF LF
         <<<.            ' '
         <<<----.        'o'
         -.              'n'
         >>>.            ' '
         <<<++++++.      't'
         <++.            'h'
         ---.            'e'
         >>>>.           ' '
         <<<+++.         'w'
         <----.          'a'
         +++++++++++..   'll'
         ------>----     reset to 'f' and 's'
         >---------- ---------- ---------- -- sets (15) to 'N'

         >>>++.--  DOT
         >..       LF LF
    >>>] at (22)

    >>>[->[-]<<<<<<<[<]<[-]>>[>]>>>>>]+ if end of song reset bottles counter
    >[-<[-] at (25)
      <<<< at (21)
      [->>[->+<<<<-
           print ' on the wall' COMMA ' '
           <<<.            ' '
           <<<----.        'o'
           -.              'n'
           >>>.            ' '
           <<<++++++.      't'
           <++.            'h'
           ---.            'e'
           >>>>.           ' '
           <<<+++.         'w'
           <----.          'a'
           +++++++++++..   'll'

           ------>----     reset (13) and (14) to 'f' and 's'
           >++++++++++ ++++++++++ ++++++++++ ++ sets (15) to 'n'

           >>>.            comma
           <.              ' '
      >>>>>>]<<]< at (20)

      [->>>>[-<<+< at (21)
             <<<++.--       DOT
             >.             LF

             [<]<<<<<<<< at (3)
             [->[-]<]+>  at (4)
             [-<[-]>
               >>>>>>>>>>>>.  'T'
               <<<-----.      'a'
               ++++++++++.    'k'
               ------.        'e'
               >>>>.          ' '
               <<<----.       'o'
               -.             'n'
               <.             'e'
               >>>>.          ' '
               <<<<-.         'd'
               >+.            'o'
               ++++++++.      'w'
               ---------.     'n'
               >>>.           ' '
               <<<<---.       'a'
               >.             'n'
               <+++.          'd'
               >>>>.          ' '
               <<<++.         'p'
               <---.          'a'
               >+++..         'ss'
               >>>.           ' '
               <<<<++++++++.  'i'
               >+.            't'
               >>>.           ' '
               <<<<--------.  'a'
               >--.           'r'
               ---.           'o'
               ++++++.        'u'
               -------.       'n'
               <+++.          'd'
               ++>+++++       reset (13) and (14) to 'f' and 's'
               >>>>.          comma
               <.             ' '

               [<]<<<<<<< at (4)
             ]+

            >>>>>> at (10)
            decrements values
            -<<<+>>[<<[-]<+<+>>>>-]<<<<[>-<[-]]>[->>>+<<<]>[->->+++++++++<<]>>> at (10)

         >>[>]>>>>] at (24)
      <<<<] at (20)

    >>>>>>]+ at (26)

    <<<<<<<[<]< at (10)
  ]
  +<+
  <<<<<<+< at (2)
  -
]

print 'Go to the store and buy some more' comma ' '

  >>>>>>>>>>[>]>>>>> at (25)
  [->[-]<]+> at (26)
  [-<[-]
    <<<<<<<<< at (16)
    -------------.   'G'
    <<----.          'o'
    >>>.             ' '
    <<<+++++.        't'
    -----.           'o'
    >>>.             ' '
    <<<+++++.        't'
    <++.             'h'
    ---.             'e'
    >>>>.            ' '
    <<<-.            's'
    +.               't'
    -----.           'o'
    +++.             'r'
    <.               'e'
    >>>>.            ' '
    <<<<----.        'a'
    >----.           'n'
    <+++.            'd'
    >>>>.            ' '
    <<<<--.          'b'
    >+++++++.        'u'
    ++++.            'y'
    >>>.             ' '
    <<<------.       's'
    ----.            'o'
    --.              'm'
    <+++.            'e'
    >>>>.            ' '
    <<<.             'm'
    ++.              'o'
    +++.+            'r'
    <.+              'e'
    >>>>>.           coma
    <.               ' '
    >>>>>>>>>
  ]+

  Initialize last loop to print final '99 bottles of beer on the wall' DOT
  <[-]+<[-]<[-]<[-]+<<< at (19)
  [<]<[-]<[-]<[-]<[-] at (7)
  ++++++++++[->+>+>++++++++++<<<]>->->-
  <<<<<<[-]+<[-]<+<< at (0)
]

Cow

moOMoOMoOMoOMoOmoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMMMmoOMMMMoOMoOMoOMoOMoOMoO
MoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMMMmoOMMMommMoOMoOMoOMoOMoO
MoOMoOMoOMoOMoOMoOMoOMMMmoOMMMMoOMoOMMMmoOMMMMoOMoOMoOMoOMoOMoOMoOMoOMoOMoO
MoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoO
MoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMMMmoOMMMMoOMMMmOomOomOomOo
mOomOoMMMMoOmoOmoOmoOmoOmoOmoOMMMmoOMMMMoOMoOMMMmoOMMMMoOMMMmoOMMMMoOMMMmoO
MMMMoOMoOMMMmoOMMMMoOMMMmoOMMMMoOMoOMMMmoOMMMMoOMMMmoOMMMMoOMoOMMMmoOMMMMoO
MMMmoOMMMMoOMMMmoOMMMMoOMoOMMMmoOMMMMoOMMMmoOMMMMoOMMMmoOMMMMoOMMMmoOMMMMoO
MoOmOomOomOomOomOomOomOomOomOomOomOomOomOomOomOomOomOomOomOomOomOoMOOOOMmoO
moOmoOmoOmoOmoOMoomoOmoOmoOmoOmoOmoOmoOmoOmoOMoomoOmoOmoOmoOMooMoomOomOomOo
mOomOomOoMoomOomOomOomOomOoMoomOomOomOomOomOomOomOomOoMMMMOoMOOmoOmoOmoOmoO
moOmoOmoOmoOmoOmoOmoOmoOmoOmoOmoOmoOmoOmoOMoomOomOomOomOomOomOomOomOomOomOo
mOomOomOomOomOomOomOomOoOOOmooMMMmoOmoOmoOmoOmoOmoOmoOmoOmOomOomOomOomOomOo
MoomoOmoOmoOmoOmoOmoOmoOmoOmoOmoOmoOmoOmoOMoomOomOomOomOomOomOoMoomOomOomOo
mOomOomOomOoMoomoOmoOmoOmoOMoomoOmoOMooMoomoOmoOmoOmoOmoOmoOmoOmoOmoOMoomOo
mOomOomOomOomOomOomOomOomOomOomOomOomOomOoMoomoOmoOmoOmoOmoOmoOmoOmoOmoOmoO
moOmoOmoOMoomOoMoomOomOomOomOomOomOomOomOomOomOomOomOoMoomoOmoOmoOmoOmoOmoO
moOmoOmoOmoOmoOmoOmoOmoOmoOmoOmoOMoomOomOomOomOomOomOomOomOomOoMoomOomOoMoo
mOomOomOomOomOomOoMoomoOmoOmoOmoOmoOmoOmoOmoOmoOmoOmoOmoOmoOmoOmoOmoOmoOmoO
moOMoomOomOomOomOomOomOomOomOomOomOomOomOomOomOomOomOoMoomoOmoOmoOmoOmoOmoO
moOmoOMooMoomOomOomOomOomOomOomOomOomOomOoMoomOomOoMoomOoOOMmoOmoOmoOmoOmoO
moOMoomoOmoOmoOmoOmoOmoOmoOmoOmoOMoomoOmoOmoOmoOMooMoomOomOomOomOomOomOoMoo
mOomOomOomOomOoMoomOomOomOomOomOomOomOomOoMMMMOoMOOmoOmoOmoOmoOmoOmoOmoOmoO
moOmoOmoOmoOmoOmoOmoOmoOmoOmoOMoomOomOomOomOomOomOomOomOomOomOomOomOomOomOo
mOomOomOomOoOOOmooMMMmoOmoOmoOmoOmoOmoOmoOmoOmOomOomOomOomOomOoMoomoOmoOmoO
moOmoOmoOmoOmoOmoOmoOmoOmoOmoOMoomOomOomOomOomOomOoMoomOomOomOomOomOomOomOo
MoomoOmoOmoOmoOMoomoOmoOMooMoomoOmoOmoOmoOmoOmoOmoOmoOmoOMoomOomOomOomOomOo
mOomOomOomOomOomOomOomOomOoMoomOomOoMoomoOmoOmoOmoOmoOmoOmoOmoOmoOmoOmoOmoO
moOmoOmoOmoOmoOmoOMoomOomOomOomOomOomOomOomOomOomOomOomOomOomOoMoomoOmoOmoO
moOmoOmoOmoOMoomOomOomOomOoMoomOomOomOomOomOomOoMoomOomOoMMMmOoOOOMoOmoOMOo
MOOmoOmoOmoOmoOmoOmoOmoOmoOmoOmoOmoOmoOmoOmoOmoOMoomOoMoomOomOomOomOomOomOo
MoomOomOomOomOomOomOomOomOomOoOOOmoOOOOmooMMMmOoMOOmoOmoOmoOmoOmoOmoOmoOmoO
moOmoOmoOmoOMoomoOmoOmoOmoOmoOmoOmoOmoOMoomOomOomOomOomOomOomOomOomOomOomOo
mOomOomOomOomOomOomOomOomOoOOOmoomoOmoOmoOMoomoOmoOmoOmoOmoOMoomoOmoOmoOmoO
moOmoOmoOmoOMoomoOmoOmoOmoOmoOmoOMoomOomOomOomOomOomOomOoMoomOomOomOomOomOo
mOomOomOomOomOomOoMoomOoMoomoOmoOmoOmoOmoOmoOmoOmoOmoOmoOmoOmoOmoOmoOMoomOo
mOomOomOomOomOomOomOomOomOomOoMoomoOmoOmoOmoOmoOmoOmoOmoOmoOmoOmoOmoOmoOMoo
MoomOomOomOomOomOomOomOomOomOomOomOomOomOomOomOomOoMoomoOmoOmoOmoOmoOmoOmoO
moOmoOMoomoOmoOmoOmoOmoOmoOmoOmoOMoomOomOomOomOomOomOomOomOomOomOomOomOomOo
mOomOomOomOoMoomoOmoOmoOMoomoOmoOmoOmoOmoOmoOmoOmoOmoOmoOmoOmoOMoomOomOoMoo
moOmoOmoOmoOmoOMoomOomOomOomOomOomOoMoomOomOomOomOomOomOomOoMoomOomOomOomOo
MoomOomOoMoomOoMOoOOMmoOmoOmoOmoOmoOmoOMoomoOmoOmoOmoOmoOmoOmoOmoOmoOMoomoO
moOmoOmoOMooMoomOomOomOomOomOomOoMoomOomOomOomOomOoMoomOomOomOomOomOomOomOo
mOoMMMMOoMOOmoOmoOmoOmoOmoOmoOmoOmoOmoOmoOmoOmoOmoOmoOmoOmoOmoOmoOMoomOomOo
mOomOomOomOomOomOomOomOomOomOomOomOomOomOomOomOoOOOmooMMMmoOmoOmoOmoOmoOmoO
moOmoOmOomOomOomOomOomOoMoomoOmoOmoOmoOmoOmoOmoOmoOmoOmoOmoOmoOmoOMoomOomOo
mOomOomOomOoMoomOomOomOomOomOomOomOoMoomoOmoOmoOmoOMoomoOmoOMooMoomoOmoOmoO
moOmoOmoOmoOmoOmoOMoomOomOomOomOomOomOomOomOomOomOomOomOomOomOomOoMoomoOmoO
moOmoOmoOmoOmoOmoOmoOmoOmoOmoOmoOMoomOoMoomOomOomOomOomOomOomOomOomOomOomOo
mOoMoomoOmoOmoOmoOmoOmoOmoOmoOmoOmoOmoOmoOmoOmoOmoOmoOmoOMoomOomOomOomOomOo
mOomOomOomOoMoomOomOoMoomOomOomOomOomOomOoMoomoOmoOmoOmoOmoOmoOmoOmoOmoOmoO
moOmoOmoOmoOmoOmoOmoOmoOmoOMoomOomOomOomOomOomOomOomOomOomOomOomOomOomOomOo
mOoMoomoOmoOmoOmoOmoOmoOmoOmoOMooMoomOomOomOomOomOomOomOomOomOoMoomOomOomOo
MooMoomOomoo

Java

class bottles
{
  public static void main(String args[])
    {
    String s = "s";
    for (int beers=99; beers>-1;)
      {
      System.out.print(beers + " bottle" + s + " of beer on the wall, ");
      System.out.println(beers + " bottle" + s + " of beer, ");
      if (beers==0)
        {
        System.out.print("Go to the store, buy some more, ");
        System.out.println("99 bottles of beer on the wall.\n");
        System.exit(0);
        }
      else
        System.out.print("Take one down, pass it around, ");
      s = (--beers == 1)?"":"s";
      System.out.println(beers + " bottle" + s + " of beer on the wall.\n");
      }
    }
}

HQ9+

9