最近、C言語を基礎から勉強中です。
問題:変数nが「偶数」であるかどうかを求める式を書きなさい。
単純に考えると、
if(n % 2 == 0) printf("偶数です。");
でいいような気がするけど、ビット演算を使用すれば
もうちょっと速いプログラムが書けるみたいです。
例えば、
if(n & 1 == 0) printf("偶数です。");
偶数は結局、「xxxxx0」となるので、こうやるといいみたいです。
さらに、0はfalseなので、
if(!(n & 1)) printf("偶数です。");
と、書けます。
なるほどねぇ…。
っていうか、素人ですね。私。