なぜいつも i, j, k,... なのか疑問に思ったことがあります。もう少し意味の分かる変数名にしないの? とか。 QT "@irof: ループ変数はネスト毎にi,j,kにしてるんだけど、「i と j を取り違えやすいから別のにしようぜー」みたいな話題はあるのかな。"
2011-04-16 12:48:16@chok12ja これはFORTRAN 由来の伝統ですね。FORTRAN では暗黙の型宣言でI~Nで始まる変数は整数型とみなされるからだと思います。またループカウンタに意味はあまりないので、一文字の変数はループカウンタだと決めたほうがプログラムは読みやすいかと
2011-04-16 13:26:43@chok12ja 由来はあるのですが、それは別として。ループカウンタがiなのは慣習ですねー。それが無いと「ループカウンタ名何にしよう」「これなんだっけ?」と書く方読む方共にワンクッション入りますが、iと決めてしまえばスキップできますので。j,kと続くのは単にiからの並びですね。
2011-04-16 13:29:35適切な思考のスキップは効率を高めるけど、適切かどうかの判断は難しい。うっかりと理解してのスキップは別だけど、無意識のスキップは経験則に由来するから高い確率で適切だし。
2011-04-16 13:36:38@irof 言われてみれば、たしかにそうですね。慣習として確立している考えれば、必要以上の意味付けをしないほうがたしかに読みやすそうですね。ありがとうございます。
2011-04-16 14:04:23@chok12ja 行方向に巡回するときはrowとしたり、時としてループ変数にi,j,k以外を使うことも私はまれにありますが、レアですね。数式の書き方を取り込んだFORTRAN以来の伝統ということもあります。まあ、業務アプリではfor each構文を使うことも多いですが。
2011-04-16 14:11:38@ryoasai74 なんだかいろんな方に返信いただいてしまって恐縮しています。ふとネットで調べてみると、意外にループカウンタの名前にも歴史があるんだなあと感心してしまいました。ありがとうございます!
2011-04-16 14:27:42