Printing lyrics of 99 Bottles of Beer I wrote a C++ program for 99 Bottles of Beer, but it's kind of messy. Is there any way I can make it short and cleaner and more easier to read?

/*
 * Write a program that prints out the entire lyrics to a full rendition of "99 bottles of beer"
 */

#include &lt;iostream&gt;

using namespace std;

int main (void)
{
    int bottle = 99;
    while (bottle &gt; 0)
    {
        cout &lt;&lt; bottle &lt;&lt; " bottles of beer on the wall, "
             &lt;&lt; bottle &lt;&lt; " bottles of beer." &lt;&lt; endl;

        bottle--;

        cout &lt;&lt; "Take one down and pass it around, " &lt;&lt; bottle &lt;&lt; " "
             &lt;&lt; "bottles of beer on the wall.\n" &lt;&lt; endl;

        if (bottle == 1)
        {
            break;
        }

    }

    cout &lt;&lt; "1 bottle of beer on the wall, 1 bottle of beer." &lt;&lt; endl
         &lt;&lt; "Take one down and pass it around, no more bottles of beer on the wall.\n" &lt;&lt; endl
         &lt;&lt; "No more bottles of beer on the wall, no more bottles of beer." &lt;&lt; endl
         &lt;&lt; "Go to the store and buy some more, 99 bottles of beer on the wall.";

    return 0;
}
A few short comments:

Don't use namespace std:

It's bad for a few reasons, but in short: You can have big name conflicts if you are using namespace std;. For more information: Why is using namespaec std considered bad practice?

Break conditions:

well lookie here:


while (bottle &gt; 0) 
{
    //print the lyrics
    if (bottle == 1) 
    {
         break;
    }
}



This could be much simpler:

while (bottle &gt; 1)
{
     //print the lyrics
}


Naming:

bottle is a crap name for a counter. Make it bottleCount, leftBottles or about anything else, but don't name it bottle. Because it isn't a bottle...