C#:如何将浮点值四舍五入到最接近的浮点值?
我有一个datagridview列“total”,其中我计算输入的各个项目的费率总和。有时我会得到30.19卢比或100.59卢比的加法,我想得到30.19到30.50和100.59到101。那么有人能帮我吗 我试过了C#:如何将浮点值四舍五入到最接近的浮点值?,c#,winforms,C#,Winforms,我有一个datagridview列“total”,其中我计算输入的各个项目的费率总和。有时我会得到30.19卢比或100.59卢比的加法,我想得到30.19到30.50和100.59到101。那么有人能帮我吗 我试过了 float val = float.Parse(value); total = val; ekunrakam = ekunrakam + total;
float val = float.Parse(value);
total = val;
ekunrakam = ekunrakam + total;
Math.Round(ekunrakam + 0.5,2);
但是它不起作用
提前感谢。如果您想将整数四舍五入到最接近的整数,如100.59到101,我会告诉您只需将浮点变量设置为整数。但是,为什么要将整数四舍五入到30.50?您具体的舍入规则是什么?如果您想舍入到最接近的整数,比如100.59到101,我会告诉您只需将浮点变量设置为整数。但是,为什么要舍入到30.50?你具体的取整规则是什么?你需要数学。取整(Somefloat+0.5,2)就行了。你需要数学。取整(Somefloat+0.5,2)就行了。通常与货币有关,在没有专用货币类型的情况下,你使用存在的最小货币单位,派斯或美分或你拥有的其他货币 另外,不要用浮动来赚钱,否则舍入误差会让你失望。 这些人建议十进制 大多数国家都有一个官方标准,规定如何对零碎的货币进行四舍五入,这有时是法律要求的,但它们通常是银行家四舍五入的一些变体。幸运的是,这是Decimal.Round的默认行为
通常使用货币,在没有专用货币类型的情况下,您可以使用现有的最小货币单位,paise或美分或其他货币单位 另外,不要用浮动来赚钱,否则舍入误差会让你失望。 这些人建议十进制 大多数国家都有一个官方标准,规定如何对零碎的货币进行四舍五入,这有时是法律要求的,但它们通常是银行家四舍五入的一些变体。幸运的是,这是Decimal.Round的默认行为
如果我得到30.19派斯,在印度0.19派斯没有任何意义。所以我想把0.50派斯加起来。我在告诉这两种可能性。如果我得到30.19派斯,在印度,0.19派斯没有任何意义。所以我想把0.50派斯凑起来。我在告诉两种可能的情况。你到目前为止尝试了什么?你到目前为止尝试了什么的可能重复?