-1
なぜこのコードをprintステートメントで印刷すると出力が正しくないのですか?なぜ、システム内の10進数を減算すると出力が正しくない
System.out.println(3.15 - 3);
出力は次のようになります。私は、出力がなければなりません
0.1499999999999999
と思います。
0.15
なぜこのコードをprintステートメントで印刷すると出力が正しくないのですか?なぜ、システム内の10進数を減算すると出力が正しくない
System.out.println(3.15 - 3);
出力は次のようになります。私は、出力がなければなりません
0.1499999999999999
と思います。
0.15
System.out.println((float)(3.15 - 3.0)); //答えは0.15
System.out.println(3.15f - 3); //答えは0.1500001
System.out.println(3.15 - 3.0); //答えは0.1499999999999999
あなたに感謝♥ –
浮動小数点演算は正確ではありません。これに関する文学はたくさんあります。 – Brick
なぜそれをやっているのjava! ..これにはどんな解決策もありますか? –
「Java」ではありません。これは、浮動小数点表現を持つすべての言語で一般的な数学と実数の有限精度表現に関する基本的な真理です。固定小数点は、関連するが異なる問題を有する。問題は、無限の数の実数が存在し、厳密に多くのものだけが16ビットで正確に表現できることである。 「浮動小数点演算」を検索します。 – Brick