in reply to Subroutine Even/Odd
This construct is weird:
if($number%2==0) { $number = $_; } print "$number";
It works because $_ is initially undef and you never assign to it. It's incredibly fragile though.
Here's how I'd do it...
use 5.010; use List::MoreUtils qw(part); my $numbers = [ 1 .. 10, 211, 1000 ]; my ($evens, $odds) = part { $_ % 2 } @$numbers; say "Even numbers: "; say $_ for @$evens; say "Odd numbers: "; say $_ for @$odds;
|
|---|