プロが教えるわが家の防犯対策術!

外部ファイル(ここではCSVファイル)内の列ごとの数値を合計し、結果をコマンドに表示したいです。

数値を合計するためsum関数を用いることは分かったのですが、各列ごとの出力・数値の合計はどのようにすればいいのですか。

合計計算のイメージはこんな感じです。

CSVファイル内

1 , 25
2 , 50
3 , 75
 ・
 ・
 ・

プログラムで外部ファイルを読み込み、各列ごとの和を計算し、

Σx=1+2+3+・・・
Σy=25+50+75+・・・

コマンド(Cygwinを使用しています)上で、

x = (数値) , y = (数値)

と表示することです。

A 回答 (2件)

「sum関数」? 何それ.



1行に 1個だけだったら, 和を計算することはできますか?
    • good
    • 0

手元にperlがないので実際に動かしてないですがこんなかんじですかねぇ



open (FH, $ARGV[0]); #$ARGV[0]はファイル名
while (<FH>) {
@line = split /,/;
$x += $line[0];
$y += $line[1];
}
close (FH);
print "x=$x y=$y";
    • good
    • 0
この回答へのお礼

回答ありがとうございます。

列ごとの数値を合計する方法が分からなかったのですが、記述して頂いた、
@line = split /,/;
$x += $line[0];
$y += $line[1];

の部分を参考にすると出来ました。

ありがとうございます。

お礼日時:2012/10/16 13:58

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!