2011/6/7 Aleksander Gorohovski <[email protected]>:

> Подскажите можно ли более изящно, без промежуточной переменной $sum,
> как это обычно делаю:
>
> my $sum;
> $sum += $_ for @m;
>
> подсчитать сумму элементов массива @m
> ?

С подпрограммой, потому просто для коллекции:

  $ perl -E 'sub funcsum { @_ > 1 ? funcsum(@_[1..$#_]) + $_[0] :
$_[0] } say funcsum(@ARGV)' 1 1 2 3 5 8 11
  31

(Созреет на ещё один LT для Шитова?) (:

-- 
maxim.vuets.name
-- 
Moscow.pm mailing list
[email protected] | http://moscow.pm.org

Ответить