→ Evenni:你的hash內容是固定,為什麼要放在loop裡面呀.. 01/12 16:05
推 Evenni:還有你的$seq在 @A=($mw,$seq)=split(..已經把文字拿出來 01/12 16:13
→ Evenni:foreach $seq(@A) 就把原先的文字結果蓋掉了 01/12 16:15
→ muchmoa:我以為foreach $seq(@A)可以取出之前存在@A裡的個別$seq 01/13 23:29
→ muchmoa:那我該如何改寫呢?謝謝 01/13 23:30
→ Evenni:在foreach $seq(@A) 上面加一行 @A=split(//,$seq); 01/14 01:59
→ muchmoa:這樣還是不行耶,他會把每個$seq拆出來的字母混在一起 01/14 10:56
→ Evenni:在@A=($mw, $seq)=split/\s+/;時,其實你已經取得字母部分了 01/14 13:06
→ Evenni:而且字母已經存成$seq, @A=split(//,$seq)是把字母在切開 01/14 13:06
→ Evenni:所以你其他部分都不用改,只要在foreach $seq(@A) 上面 01/14 13:08
→ Evenni:補上@A=split(//,$seq)就好, 補看看,我試過是沒問題 01/14 13:08
→ muchmoa:這樣算出來的一樣是累計的耶,ACTPQK應該是-2.2而不是 01/14 13:22
→ muchmoa:42.3(WFLIMS的44.5-2.2) 01/14 13:23
→ Evenni:因為你印完$sum後沒有把$sum歸零,所以會累加上去是正常的 01/14 15:20
→ Evenni:在print out2 "$seq $sum\n"; 下面補一行$sum = 0; 01/14 15:21
→ muchmoa:謝謝喔,我以為每個foreach會有自己的$sum,那如何只處理有 01/14 21:11
→ muchmoa:英文字母的列數呢? 01/14 21:13
→ Evenni:其實你不用煩惱這個問題,因為你是用hash,如果對應不到 01/14 21:52
→ Evenni:字母,自然就不會作加法的動作, 01/14 21:53
→ muchmoa:到也沒錯,謝謝喔 01/15 17:11