あのねえ、こんなの学部のプログラミングの最初の講義で習うような話だと思うけど、
https://ideone.com/8wrQC7

何も考えずにdoubleを使うと上のgrossの結果にあるように演算結果に誤差が
出ちゃうことがあるけど、ちゃんと誤差の性質を理解していれば、何度も言ってるように
必用な精度を得ることが出来るんですよ。