Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/301.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C#:如何将浮点值四舍五入到最接近的浮点值?_C#_Winforms - Fatal编程技术网

C#:如何将浮点值四舍五入到最接近的浮点值?

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;

我有一个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);
但是它不起作用


提前感谢。

如果您想将整数四舍五入到最接近的整数,如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派斯凑起来。我在告诉两种可能的情况。你到目前为止尝试了什么?你到目前为止尝试了什么的可能重复?