$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";