<meta charset="utf-8"><font class="Apple-style-span" face="arial, sans-serif"><div><span class="Apple-style-span" style="border-collapse: collapse;">ЕÑть куча Ñлужебных переменных, которые редко иÑпользуютÑÑ Ð¸ которые можно (но не нужно) приÑпоÑобить под Ñвои нужды:</span></div>
<div><span class="Apple-style-span" style="border-collapse: collapse;"><br></span></div><div><span class="Apple-style-span" style="border-collapse: collapse;">$. += $_ for @m; say $.</span></div><div><span class="Apple-style-span" style="border-collapse: collapse;"><br>
</span></div><div><span class="Apple-style-span" style="border-collapse: collapse;">Ð’ конце концов еÑть ведь Ñам маÑÑив:</span></div><div><span class="Apple-style-span" style="border-collapse: collapse;"><br></span></div>
<div><span class="Apple-style-span" style="border-collapse: collapse;">unshift @m, 0; $m[0] += $m[$_] for 1 .. $#m; say shift @m;</span></div><br></font><div class="gmail_quote">2011/6/7 <span dir="ltr"><<a href="mailto:moscow-pm-request@pm.org">moscow-pm-request@pm.org</a>></span><br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;"><div id=":a2">> 2011/6/7 Aleksander Gorohovski:<br>
><br>
>> ПодÑкажите можно ли более изÑщно, без промежуточной переменной $sum,<br>
>> как Ñто обычно делаю:<br>
>><br>
>> my $sum;<br>
>> $sum += $_ for @m;<br>
>><br>
>> подÑчитать Ñумму Ñлементов маÑÑива @m<br>
>> ?<br>
><br>
> С подпрограммой, потому проÑто Ð´Ð»Ñ ÐºÐ¾Ð»Ð»ÐµÐºÑ†Ð¸Ð¸:<br>
><br>
> Â $ perl -E 'sub funcsum { @_ > 1 ? funcsum(@_[1..$#_]) + $_[0] :<br>
> $_[0] } say funcsum(@ARGV)' 1 1 2 3 5 8 11<br>
> Â 31<br>
<br>
О-о. Тоже Супер. Главное Ñ„ÑƒÐ½ÐºÑ†Ð¸Ñ Ð±ÐµÐ·Ñ‹Ð¼ÑннаÑ.<br>
СпаÑибо.<br>
<br>
> (Созреет на ещё один LT Ð´Ð»Ñ Ð¨Ð¸Ñ‚Ð¾Ð²Ð°?) (:</div></blockquote></div><br>