[英]C# : How to round up float value to nearest float value?
我有一個datagridview列'total',其中我正在計算所輸入的各個項目的費率之和。有時我會得到30.19盧比或100.59盧比的加成,我想使30.19至30.50和100.59至101.所以任何人都可以幫我..?
我努力了
float val = float.Parse(value);
total = val;
ekunrakam = ekunrakam + total;
Math.Round(ekunrakam + 0.5,2);
但它不起作用..
提前致謝..
通常在使用貨幣的情況下,如果您沒有專用的貨幣類型,則使用現有的最小貨幣單位,派斯或美分或您擁有的貨幣。
另外,請勿使用浮點數賺錢,否則舍入錯誤將使您受益。 這些人建議使用十進制。
大多數國家/地區都有法定的標准,規定如何對少量貨幣進行四舍五入,這有時是法律所要求的,但它們通常是銀行家四舍五入的變體。 幸運的是,它是Decimal.Round的默認行為。
http://msdn.microsoft.com/zh-cn/library/system.decimal.round%28v=vs.71%29.aspx
您希望Math.Round(Somefloat + 0.5,2)可以完成這項工作。
如果您想舍入到最接近的整數(例如100.59到101),我會告訴您只需將float變量設置為int。 但是,為什么要舍入到30.50? 您舍入的具體規則是什么?
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.