2011-05-11 145 views
1

我很難計算雙倍數值的百分比。我寫了下面的代碼,但它總是顯示「0」。可能是什麼問題?計算雙倍數的百分比

 double percent = 80; //Percent 
     double toCalc = 1/1000000; //1 uAmper 

     MessageBox.Show((toCalc * (percent/100F)).ToString()); 

謝謝。

回答

2

1/1000000需要作爲浮點除法執行。我會寫這樣的:

1.0/1000000.0 

你寫它的方式,該司將作爲整數除法來執行,然後晉升爲浮點值。整數除法結果爲0,這解釋了你所看到的。

1

此行是錯誤的:

double toCalc = 1/1000000; //1 uAmper 

,因爲你是toCalc分配0。這就是爲什麼它總是顯示零。

您應將其更改爲

double toCalc = 1/1000000d; 

這是因爲它首先計算百萬分之一,對於整數類型,計算結果爲0。然後,它被轉換爲加倍,但它仍然是0。