作者handsomegirl (薰)
看板perl
标题Re: [问题] 统计资料
时间Mon Sep 3 15:20:22 2007
※ 引述《handsomegirl (薰)》之铭言:
: ※ 引述《handsomegirl (薰)》之铭言:
: : #!usr/bin/perl
: : use List::Util qw(max min);
: : #########################2######################
: : chdir "c:\\test\\6";
: : @mutifile=glob("*.txt");
: ^^^ A.txt
: 发现问题出现在这附近
: 当我单独读取指定的档案的时候,印出来的东西不会有错
: 但是一旦用*去做所有文字档的时候,数值却都有问题
: 请问一下会是怎麽回事呢?
自问自答XD
後来发现是因为底下的@value没有归零
导致一直累加上去,成为有问题的输出
: : foreach(@mutifile)
: : {
: : open(FILE,$_);
: : @file=<FILE>;
: : close(FILE);
: : foreach(@file) {
: : chomp;
: : split(/\s+/);
: : unshift @value,$_[4];
: : }
: : $max=max @value;
: : $min=min @value;
: : #####计算平均###########
: : foreach $value(@value) {
: : $total += $value;
: : }
: : $average = $total/@value;
: 平均值这里我多加
: $a=@value;
: 让它成为个数
: 就没有问题
: : open f,">>c:\\test\\6\\stastical.txt";
: : print f "$_[1]-- max=$max min=$min avg=$average\n";
: : close f;
@value=0;
pop @value;
让数值归零,再把0弹出,以免影响下次运算
: : }
: : close FILE;
: : 总结到最後写成了这样的code
: : 但是在检查数值的时候
: : 发现有些是对的
: : 但有些是错的
: : 是我的运算式有问题吗?
: : 还是哪里错了?
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 61.65.55.161