[Moscow.pm] diff @array

Dmitry Karasik dmitry на karasik.eu.org
Пт Авг 13 02:34:47 PDT 2010


let the fun begin!

1)
use List::MoreUtils 'pairwise';
print pairwise { $b - $a } @{[@inc[0..$#inc-1]]}, @{[@inc[1..$#inc]]};

2)
local $. = $inc[0];
print map { -$.+($.=$_) } @inc[1..$#inc];

и его деструктивная версия

local $. = shift @inc;
print map { -$.+($.=$_) } @inc;


On Fri, Aug 13, 2010 at 11:09:50AM +0200, Andrew Shitov wrote:
> Привет!
> 
> А кто умеет упростить вот это, применив всякие map/grep?
> 
> 
> my @inc = (0, 10, 20, 35, 55);
> my @uni;
> for (my $c = 1; $c != scalar @inc; $c++) {
>     push @uni, $inc[$c] - $inc[$c - 1];
> }
> say Dumper \@uni;
> 
> 
> -- 
> Andrew Shitov
> ______________________________________________________________________
> andy на shitov.ru | http://shitov.ru
> --
> Moscow.pm mailing list
> moscow-pm на pm.org | http://moscow.pm.org

-- 
Sincerely,
	Dmitry Karasik



Подробная информация о списке рассылки Moscow-pm