[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[jfriends:00353] Re: JAVA の浮動小数点について質問があります。どなたかご存知でしたらおしえてください。



えんどうです。

> 質問ですが、以下のコードがありますが、このコードを実際に動かすと「Equal」が
> 表示されます。教材では「not equal」が答えのようですがいまいちJAVAの浮動小数
> 点演算についてよくわからなくなってしまいました。

その教材はJavaのどのバージョンで書かれているのでしょうか...?

また、答えの説明にはどう書かれているのでしょう。

> 大変申し訳ございませんが四捨五入系の問題だと推測するのですが、JAVAのバージョ
> ンによって演算結果が異なるなどの
> 話がありますでしょうか?

四捨五入というより浮動小数誤差でしょうか。

      double b = 1.1 + 2.2;
      System.out.println(b);

この実行結果は

3.3000000000000003

となります。

widefp/strictfp の問題かと思い、

public strictfp class E {
  :
}

などとしてみましたが Equal が表示されました。double でも同様です。

-- 
ENDO Yasuyuki <yasuyuki@xxxxxxxxxxxx>
http://www.javaopen.org/~yasuyuki/ (Personal/Japanese Only)
http://www.javaopen.org/jfriends/ (Japanese Only)