配列内の数値を合計する - Perl

リスト(配列)内の数値をすべて合算した値を取得したい。 素直に計算する方法と、モジュールを利用する方法がある。List::Utilは5.8以上から標準モジュールとして用意されている(インストールする必要がない)。最近のPerlを使っているならモジュールを利用すれば良いだろう。

サンプル

;#
;#リストの値をすべて足す
;#

use strict;
use List::Util qw(sum);

#-----------------------------#
#         初期値の設定        #
#-----------------------------#
my @array = (1..10);    #足せば55になる

#-----------------------------#
#         合計値の計算        #
#-----------------------------#
print sum1( @array ), "\n";
print sum2( @array ), "\n";



#------------------------------------------------
#■合計値を計算する (その1)
#------------------------------------------------
sub sum1 {
    my $total = 0;

    #-- 渡された配列をすべてなめる --#
    foreach(@_){
        $total += $_;
    }

    return( $total );
}


#------------------------------------------------
#■合計値を計算する (その2)
#------------------------------------------------
sub sum2 {
    #-- モジュールを利用(Perl5.8以降) --#
    return(
        List::Util::sum(@_)
    );
}