12/11/30 21:09:18.54 thjSQ6y9
>>163
すごく基本的なことなのだが、プログラム上で数字は0と1の2進数で表現される
0以上の数は2のn乗を足して作る、0以下の数は2の1/n乗を足して作られる
0.8という数字は2の1/n乗では正確には作れないから実際にはそれに近い値を代用するため誤差が出る
if文の中身は実際には if( 80 >= 100 * 0.80001 )みたいになってると思われる
if文の手前で計算すればXはINT型なので代入する際にINT型に置換される
他はif文の中で明示的にキャストするか、小数使わないよう計算するとかまぁ適当に