如何制作圆形数字?
示例:3341.48至3342.00
答案 0 :(得分:4)
似乎你总是想在这里围捕。在那种情况下使用
Math.Ceiling(3341.48)
这将返回3342。
如果要向最近的整数舍入,请使用
Math.Round(3341.48)
这将返回3341.请注意Bankers rounding
是此处的默认设置,这可能会导致舍入X.50的一些意外结果。
答案 1 :(得分:0)
如果您希望3341.48向上舍入到3342,听起来您可能需要Math.Ceiling
:
decimal m = 3341.48m;
decimal roundedUp = Math.Ceiling(m);
这将始终向上舍入 - 例如,3341.0000001仍然会舍入到3342。如果那不是您所追求的,请指明您想要它的情况,以及您希望它向下舍入的情况。
请注意,这将舍入到3342而不是3342.00 - 它不会保留原始精度,因为您已使用Math.Ceiling
要求输入整数值。
然后想要强制将精度设置为2是相对不常见的,但是可以除以100,然后在必要时再次乘以100。或者,如果您只需要输出,则应考虑适当地格式化结果,而不是更改值。
答案 2 :(得分:0)
如果要将Math.Round(number)
舍入到最接近的整数,请使用number
。
如果要将Math.Round(number,digits)
舍入到指定数量的小数位,请使用number
。
如果您想要舍入到更低/更高值,请改用Math.Floor(number)
/ Math.Ceiling(number)
。
答案 3 :(得分:0)
将货币金额汇总至5美分:
金额= 20 * int(金额/ 20)