• ベストアンサー

実数の計算結果について

System.out.println(1.78-1.18); という文を実行すると、0.6000000000000001という結果になってしまうのは何故なのでしょうか?他の数でも、小数点以下の最後に誤差?が出たり出なかったりします。 初心者なものでどうぞよろしくお願い致します。

質問者が選んだベストアンサー

  • ベストアンサー
  • sha-girl
  • ベストアンサー率52% (430/816)
回答No.1

既出の質問です。 浮動小数点だからそうなるのです。 有効数字は15桁なのでそれ以外は 誤差の範囲です。

参考URL:
http://oshiete1.goo.ne.jp/kotaeru.php3?q=616921
fukko50
質問者

お礼

回答ありがとうございました。ということは、有効数字以下は切り捨てて使うということになるのでしょうか。とりあえずまた調べてみます。

関連するQ&A