1

我正在构建一个基于 excel 工作表的应用程序,在某个时刻,工作表使用 =ROUNDUP(701.25;-1) 返回为 710 ...我们如何在 C# 中执行此操作

我尝试了返回 701 的 Math.Round,如果我尝试将 Math.Round() 与 -1 一起使用,那么我得到了这个

四舍五入的数字必须介于 0 和 15 之间,包括 0 和 15。

请帮帮我。

4

2 回答 2

2

试试这个(如果需要,您需要将返回值转换为int):

public static double RoundUp(double value, int digits)
{
    double pow = Math.Pow(10, digits);
    return Math.Ceiling(value * pow) / pow;
}

这应该为您提供此处定义的功能:

http://office.microsoft.com/en-gb/excel-help/roundup-HP005209242.aspx

于 2013-08-26T07:49:25.053 回答
1

使用以下两种方法。这可能会对您有所帮助

int RoundUp(int toRound)
{
     return (10 - toRound % 10) + toRound;
}

int RoundDown(int toRound)
{
    return toRound - toRound % 10;
}

参考将 整数舍入到最接近 10 的倍数

于 2013-08-26T07:39:21.243 回答