The stupid question is the question not asked PerlMonks

### Re: Drunk on golf: 99 Bottles of Beer

by primo (Scribe)
 on May 23, 2016 at 07:15 UTC ( #1163844=note: print w/replies, xml ) Need Help??

in reply to Drunk on golf: 99 Bottles of Beer

phpGolf seems to have reached the end of its life cycle. My 172 byte solution was the following:

```<?for(;100>\$a=1+\$a." bottle\$o[21] of beer";\$o="
Take one down and pass it around, \$b.

".\$g="\$b, \$a.\$o")\$b="\$a on the wall";echo"\$g
Go to the store and buy some more, \$b.";

Replies are listed 'Best First'.
Re^2: Drunk on golf: 99 Bottles of Beer
by eyepopslikeamosquito (Bishop) on May 23, 2016 at 10:22 UTC

Thanks for sharing your solution, and for reminding me of the good old days on the PHP golf course. After digging out my old notes, I can finally share my PHP solutions too.

I had many different 173 strokers, such as (without bothering to use the routine PHP bitwise ~ golfing trick to reduce the " on the wall" strings below by one char):

```<?for(;\$c=(\$b=++\$n." bottle\$s of beer")." on the wall",99^\$x="\$c, \$b.
\$z\$x";\$s=s)\$z="Take one down and pass it around, \$c.

";echo\$x."Go to the store and buy some more, \$c.";

<?for(;\$c=(\$b=++\$n." bottle\$z[20] of beer")." on the wall",99^\$x="\$c,
+\$b.
\$z\$x";)\$z="Take one down and pass it around, \$c.

";echo\$x."Go to the store and buy some more, \$c.";

<?for(;99^\$x=(\$c=(\$b=++\$n." bottle\$x[21] of beer")." on the wall").",
+\$b.
\$x";\$x="Take one down and pass it around, \$c.

\$x")?><?=\$x,"Go to the store and buy some more, \$c.";
I had a mental block and just could not get to 172!

After I had given up, ToastyX mercifully gave me a hint, and then I finally did get to 172 -- but did not submit either of these two below because I would never have thought of them without ToastyX's hint:

```<?for(;99^\$c=(\$b=++\$n." bottle\$x[21] of beer")." on the wall";\$x="
Take one down and pass it around, \$c.

\$c, \$b.\$x")?><?="\$c, \$b.\$x
Go to the store and buy some more, \$c.";

<?for(;99^\$c=(\$b=++\$n." bottle\$s of beer")." on the wall";\$s=s)\$x="
Take one down and pass it around, \$c.

\$c, \$b.\$x";echo"\$c, \$b.\$x
Go to the store and buy some more, \$c.";

Create A New User
Node Status?
node history
Node Type: note [id://1163844]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others making s'mores by the fire in the courtyard of the Monastery: (7)
As of 2021-04-19 19:45 GMT
Sections?
Information?
Find Nodes?
Leftovers?
Voting Booth?

No recent polls found

Notices?