2017-05-09 54 views
-3

我有一些小數的問題,用戶應該把一個十進制數例如。 (1.97683),然後選擇他想要收回多少小數,所以在這種情況下,如果他選擇了3,他會得到數字(1.977)。選擇多少小數

我只是不能得到這個工作。

在此先感謝

+1

到目前爲止,您嘗試了什麼? –

+0

Math.Round(nr,3)只適用於第三種,重點是讓用戶輸入他/她想要的小數位數 –

+1

在變量中捕獲您的小數精度並將其傳遞給Math.Round - Math .Round(n,p); – Gururaj

回答

-2

嘗試此截斷:

value = Math.Truncate(100 * value)/100; 

或者使用Math.Round到數四捨五入至小數點後選擇號碼:

value = Math.Round(value, digits); 
+0

這會做什麼? –

+0

截斷他要求的2位數字時,他可以用所選小數位數的10倍替換100。我編輯了舍入號碼。 –

1

我使用ToString重載來圓顯示一個值。你的情況應該是

var result = value.ToString("0.###")

其更好的使用這種方式,而不是Math.Round,因爲有時它可能會給你帶來不好的結果。