0
您好我正在一個android計算器應用程序和現在工作的操縱。我已經爲以下定義:Android計算器:操作查詢+刪除不需要的零爲答案輸出
ArrayList<Float> inputnum = new ArrayList<Float>();
float inputnum1;
float inputnum2;
,然後操作,
case MULTIPLY:
inputnum1 = inputnum.get(0);
inputnum2 = inputnum.get(1);
inputnum.add(inputnum1 * inputnum2);
Display.setText(String.format("%.9f", inputnum.get(0)));
類似的部門之一。
muliply函數和除法函數適用於整數(例如5 * 4輸出20.00000000) 然而,當它處理帶小數位的數字時,例如5.3 * 4,它輸出爲21.12000089,這是不正確的。
是什麼問題? 另外,如何設置輸出到顯示器去除不必要的零點?例如 當5 * 4它只顯示20而不是20.000000作爲最終答案? 當5.3 * 4 = 21.12而不是21.12000000作爲最終答案?
非常感謝!
對於你的第一個問題。檢查[this](http://stackoverflow.com/questions/2100490/floating-point-inaccuracy-examples) – nandeesh
謝謝!似乎改變所有相關的浮動,以成爲雙重然後它的工作,現在1.2 * 6.3 = 7.56而不是7.560000042。 – pearmak