12/04/14 03:04:43.03
じゃあ、map版です。
use 5.12.0;
sub com {
my ($mod, $zz, $num, $str) = @_;
$str .= $zz ;if 0 == $num % $mod;
$str ? ($num, $str) : $num
}
sub fizz {com(3, 'Fizz', @_)}
sub buzz {com(5, 'Buzz', @_)}
sub gizz {com(7, 'Gizz', @_)}
map{say "$_: " . gizz(buzz(fizz($_)))} qw(1 3 5 7 15 21 35 105);