★★Java質問・相談スレッド144★★
■ このスレッドは過去ログ倉庫に格納されています
0697デフォルトの名無しさん
2011/05/19(木) 17:02:11.59Math.ulp()使えば誤差の限界っぽい情報が求まる。
2.6のulpは4.440892098500626E-16あたりだ。
Math.nextAfter()使えば前後の値が解る。
2.6の次に大きい数は2.6000000000000005あたりで、
次に小さい数は2.5999999999999996あたりだ。
本来"2.600000000000000088817841970012523233890533447265625"
と書かなければならないテストコードを、いいかげんなテストプログラマが
"2.6"と適当な近似値で書いてもコンパイル結果が一緒だったのが気にくわないなら、
"0x1.4cccccccccccdp1"
とIEEEビットイメージで書かせればいい。
■ このスレッドは過去ログ倉庫に格納されています