[4.12] 練習問題1 (修正)

サブルーチンの中身のみ変更。

変更点は

  1. 変数名$ansを$sumに変更。どちらがいいかは甲乙つけがたいところだが、「加算」を印象付けるとしたら$sumだと思った。
  2. 引数から渡されたリストを再度サブルーチン内で別の配列に移すのではなく、@_として利用。
  3. 解説を参考に、空リストを渡された場合に備え、$sumを0で初期化した。

サブルーチンはこちら。

sub total{
    my $sum = 0;
    foreach (@_){
	$sum += $_;
    }
    $sum;
}