Re: [問題] perl 排序

看板Perl作者 (markpci)時間17年前 (2008/02/18 11:44), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串6/6 (看更多)
※ 引述《markpci (markpci)》之銘言: : 我現在有個文字檔,文字檔格式為: : aaa 0.154 : bbb 0.235 : ccc 0.485 : ddd 0.365 : 我想將上述資料檔做排序,然後取最大值出來跟每一列相除, : 結果為: : aaa 0.485 1 (0.485/0.485) : bbb 0.365 0.8(0.365/0.485) : ccc 0.235 0.5(0.235/0.485) : ddd 0.154 0.3(0.154/0.485) : 請問要如何做呢??? $fname="test.txt"; open(IN,'<'.$fname) || die "open $fname failed!!"; open(OUT,'>'.$fname.'sort') || die "open $fname\_tranOK!!"; while (<IN>) { $data = $_; $data_source=$data; chomp($data); @data = split "\t",$data; $sysno = $data[0]; $setnum = $data[1]; #push(@total_source,$setnum."|".$sysno); #print $setnum."|".$sysno."\n"; $code{$setnum."|".$sysno} = $data_source; } foreach (sort keys %code) { @newdata= $code{$_}; #print $newdata; $ratio= $code{$_}/$newdata[0]; print $newdata/t$ratio; #print OUT $newdata; } close(IN); close(OUT); print "Finish!!\n"; 我執行時~出現: Illegal division by zero at C:\AppServ\www\kzbio2\pcc\pcc_sort.pl line 24, <IN> line 6. 請問該如何修正才正確呢?? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 210.70.83.82
文章代碼(AID): #17kFy3pm (Perl)
討論串 (同標題文章)
文章代碼(AID): #17kFy3pm (Perl)