夥計!我遇到了一個小問題:我正在做一個簡單的三個double值的加法。結果比使用的值具有更小的精度。添加雙打精度下降?
double minutes = 3;
minutes = minutes/(24.0*60.0); // contains 0.00208333
double hours = 3;
hours = hours/24.0; // contains 0.125
double days = 3; // contains 3
double age = days + hours + minutes; // result is 3.12708
我發現沒有辦法避免這種行爲。
你如何檢查的價值你變量? – Spook
問題是什麼?計算似乎沒問題。你如何打印結果?你想要打印更多數字嗎? – zch
注意:1)取決於你輸出你的值的方式,你可能看不到所有的有效數字,2)雙打不能精確表示數值,如0.1 – PlasmaHH