2012-06-21 56 views
0

我有一個datagridview列「總計」,其中我正在進行各個項目的匯率的總和。有時我得到像30.19盧比或100.59盧比,我想使30.19 30.50 & 100.59到101.S.8任何人PLZ幫助我..?C#:如何將浮點值整理爲最接近的浮點值?

我曾嘗試

   float val = float.Parse(value); 
       total = val; 

       ekunrakam = ekunrakam + total; 
       Math.Round(ekunrakam + 0.5,2); 

,但其沒有工作..提前

感謝..

+3

可能重複[我怎樣四捨五入到最接近的0.5?(http://stackoverflow.com/questions/1329426/how-do-i-round-to-the-nearest-0 -5) – James

+0

你到目前爲止做了什麼? –

回答

1

你想Math.Round(Somefloat + 0.5,2)將完成這項工作。

0

如果你想四捨五入到最接近的整數,如100.59至101,我會告訴你只要將你的float變量設置爲一個int。但是,爲什麼你想要達到30.50?四捨五入的具體規則是什麼?

+0

如果m得到30.19,在印度0.19 paise沒有任何意義。所以我想要湊成0.50 paise。我告訴我有可能性.. – Harshali

2

通常使用貨幣,在沒有專用貨幣類型的情況下,您使用存在的最小單位貨幣,貨幣或美分或您有什麼。

此外,不要使用浮動金錢,或舍入錯誤會讓你。 這些民間建議小數。

What is the best data type to use for money in c#?

大多數國家都對如何舍分數數額貨幣的,有時是由法律規定的正式標準,但它們通常是銀行家四捨五入的一些變種。如果幸運的話,它會是Decimal.Round的默認行爲。

http://msdn.microsoft.com/en-us/library/system.decimal.round%28v=vs.71%29.aspx