well,if its golf we're playing , then a couple of minor changes saves a few lines :
$nBottles = ($ARGV[0] > 0) ? $ARGV[0] :100;
foreach (reverse(1 .. $nBottles)) {
$s = ($_ == (1 || 2)) ? "" : "s";
print "\n$_ bottle$s of beer on the wall,\n$_ bottle$s of beer,\nTake
+one down, pass it around,\n" , ($_ - 1)," bottle",(($_ - 1) == 1) ? "
+ " : "s "," of beer on the wall\n";
}
print "\n*burp*\n";
Second Update Reduced by a couple more lines :
$nBottles = ($ARGV[0] > 0) ? $ARGV[0] :100;
foreach (reverse(1 .. $nBottles)) {
print "\n$_ bottle",($_ == (1 || 2)) ? "" : "s"," of beer on the wall,
+\n$_ bottle",($_ == (1 || 2)) ? "" : "s"," of beer,\nTake one down, p
+ass it around,\n" , ($_ - 1)," bottle",(($_ - 1) == 1) ? " " : "s ","
+ of beer on the wall\n";}print "\n*burp*\n";
Update: fixed a typo (thanks to particle)
|