FGALTS 03 /RE:5467 RE^3:【AWK】フィールド比較  こんにちは、でびさん 既にレスがついていますが、 》これって、ユーザ定義関数なんですね。 ただの変数です。 》を2回用いているのは何故だろう・・・と悩んだんですが、これは検索する際の 1回でやってやろうと思うと、私の頭がついていかなかったもので。 多分、やってやれないことはないと思いますが、ちょっと考えつきません。 で、この問題は素直に考えると、 (1)行の中で1番大きい数字を探す(もちろん、合計は除くけど) (2)1番大きい数字のフィールドに対応したファイル名で出力 と言う2段階の仕事に分けられます。 (1)に関しては、max なんて関数を作るよりも、ループを回して探した方が 速いかな、と思ったので、あの形になりました。 ただ、一番初めは、ここで「1番大きい数字のフィールド」を検出して、その フィールドに対応したファイルをそのまま出力していました。でも、この方法 だと、「1番大きい数字のフィールド」が複数あったときの処理が面倒になる ことに気がついて、あのような形になりました。 (実は最初、複数あることもあるということに気がつかなかったという(^^;) いわゆる「段階的詳細化」(この場合、そういうのはおこがましいけど)で、 たいていの問題は解けると思います。私は、このスタイルで、200行の awk スクリプトを書いたことがあります。 #さすがに、冗長で汚くて、とても人には見せられないけど。 #確か、一番初めは700行ぐらいあったような気もする。もっとかな? sed でも awk でもバッチでも BASIC でも FORTRAN でもC言語でも、やりかた はいつも同じです。ただ、よく文法を忘れるけど。(笑) としき