x % 2 == 1
のような形式の奇数/偶数チェックを報告します。 このようなチェックは、負の奇数値と共に使用した場合に失敗します。
x % 2 != 0
または
(x & 1) == 1
を代わりに使用することを検討してください。