http://d.hatena.ne.jp/odz/20070509/1178729737 や http://jijixi.azito.com/cgi-bin/diary/index.rb?date=20070509#p02 で、剰余なしの話をしているので、私もちょっと書いておく。
過剰にまじめに。
剰余の実行コストを根拠に「願い下げだ」と言っているのなら、剰余の話題を書く前に
「個人的にはFizzBuzz問題に ruby・perl・javascript等 を使うような人は願い下げだ」
というべきだ。と思う。
Cに限るとしても剰余の話をする前に
「個人的にはFizzBuzz問題にprintfを使うような人は願い下げだ」
というべきだと思う。
そもそも。
剰余を使うことで分岐が減らせるんだから、分岐予測失敗のペナルティと剰余のコストのどっちをとるのが正解なのかは微妙だと思う。
たぶん剰余の方が実行バイナリのサイズも小さくなるのでキャッシュに乗りやすいかもとか。
検証してないから思うだけ。CPUに依存した話なのでちゃんと検証するのは大変。