Мне кажется самым изящным способ с использованием List::Util. Этот модуль часто нужен, поэтому его использование не является проблемой.<div><br></div><div>Кстати, на ruby это будет так:</div><div>> [1, 2, 3].inject(0) { |sum, value| sum + value }</div>
<div><div> => 6</div><div><br></div><div>Или даже так:</div><div>> [1, 2, 3].inject(0, &:+)</div><div> => 6</div><div><br></div><br><div class="gmail_quote">7 июня 2011 г. 22:34 пользователь Aleksander Gorohovski <span dir="ltr"><<a href="mailto:angel@feht.dgtu.donetsk.ua">angel@feht.dgtu.donetsk.ua</a>></span> написал:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">Уважаемое сообщество,<br>
Доброго времени суток!<br>
<br>
Подскажите можно ли более изящно, без промежуточной переменной $sum,<br>
как это обычно делаю:<br>
<br>
my $sum;<br>
$sum += $_ for @m;<br>
<br>
подсчитать сумму элементов массива @m<br>
?<br>
<br>
Спасибо.<br><font color="#888888">
-- <br>
Moscow.pm mailing list<br>
<a href="mailto:moscow-pm@pm.org" target="_blank">moscow-pm@pm.org</a> | <a href="http://moscow.pm.org" target="_blank">http://moscow.pm.org</a><br>
</font></blockquote></div><br></div>