2016-08-03 127 views
0

我們有兩個浮點數,小數點後六位。我們將它們分開並在我們的網頁上顯示結果。我們還在網頁上顯示了我們用於劃分的2個數字。由於這兩個數字非常長(6位小數),我們認爲顯示全部數字可能不是一個好的用戶體驗。所以我們決定只顯示這些數字,小數點後兩位。但是,這會讓用戶感到困惑,因爲他們將這兩個數字分開,並嘗試與不同的結果(使用完整數字計算)相匹配。將小數點後兩位的浮點數與小數點後六位的浮點數相除

示例 - 假設有2個數字:0.289045和0.017457。如果我們除以這些數字,結果是16.56這是顯示給用戶以及這兩個數字爲0.28和0.01。現在用戶試圖將0.28和0.01分開,他們得到的結果是28,與我們展示的不匹配。

我們認爲可能會顯示28(即分0.28和0.01)是正確的方法。但是這對於像0.289045和0.001745這樣的數字不起作用。這裏用0.28除以0.00不會給出任何結果。我們總是希望向用戶展示積極的結果。

我無法想出正確的方法來解決這個問題。什麼纔是正確的方法?

+1

?你使用的是什麼代碼? – Wajahat

+0

你在用什麼語言?我知道JavaScript有小數位的一些限制。也許在處理固定的小數位時,你應該把數字乘以10數字,讓你用整數進行數學運算。 (當然,如果沒有四捨五入例如:1/3 = 0.333333 ....,無限浮點數不起作用) –

+0

我正在使用PHP。 – sagun

回答

0

您可以用2或3位有效數字而不是固定小數位數顯示所有數字。

例如

0.28/0.017 = 16 

0.289/0.0174 = 16.6 
您正在使用什麼語言
+0

這可能是一種方法。但是,如果數字是0.289045和0.000175。我們最終會顯示0.00017,這與顯示完整數字幾乎相同。 – sagun

+0

另一種選擇是切換到科學記數法。 0.17 * 10^-3稍微雜亂一些,但至少很容易確保琴絃始終長度相同 – James