Perl コーディング初心者質問コーナー Part25
■ このスレッドは過去ログ倉庫に格納されています
0763nobodyさん
03/07/18 20:19ID:Y8wtPXEB1 50 10 60
2 60 80 140
3 10 60 70
これを各項目別にソートしたいです。
思いついたのは
$d[0][0]→1 $d[1][0]→0:50 $d[2][0]→0:10 $d[3][0]→0:60
$d[0][1]→2 $d[1][1]→1:60 $d[2][1]→1:80 $d[3][1]→1:140
$d[0][2]→3 $d[1][2]→2:10 $d[2][2]→2:60 $d[3][2]→2:70
多次元配列に入れる
歴史の順でソートする場合
sort(@d[1])←ここは自信ないです(d[1]の中をソートしたいんです)
foreach(@d[1]){
($num,$data) = split(/:/);
print "$d[0][$num]","$_","$d[2][$num]","$d[3][$num]";
}
と言う方法です。各要素に、はじめの添え字を記録して、それをsplitで分解して、それを添え字にする、とい方法ですが、
これは、かなり無駄な気がします・・・
もうすこしきれいなのはありませんか?
■ このスレッドは過去ログ倉庫に格納されています