将小数值四舍五入到最接近的 0.01?
如何将十进制值四舍五入到最接近的 0.05 值?,链接的 SO 帖子也讨论了类似的主题,但它不是输出我预计。
我需要像这样转换十进制值,
16.489-->16.49
16.482-->16.48
16.425-->16.43
7.67 --> 7.67 (no conversion)
我可以使用下面的 C# 方法来转换值,
Math.Round(16.482*20)/20;
但是这个方法对我不起作用,它给出了以下结果,
16.489-->16.5
16.482-->16.5
7.67 --> 7.7
16.425-->16.45
c# 中执行此操作的优雅方法是什么。
Possible Duplicate:
c# - How do I round a decimal value to 2 decimal places (for output on a page)
How to round decimal value up to nearest 0.05 value??, the linked SO post also discusses the similar topic, but its not the output i expected.
I need to convert the decimal values like this
16.489-->16.49
16.482-->16.48
16.425-->16.43
7.67 --> 7.67 (no conversion)
I can use the below C# method to convert the values
Math.Round(16.482*20)/20;
But this method not works for me, it gives the following results
16.489-->16.5
16.482-->16.5
7.67 --> 7.7
16.425-->16.45
whats the elegant way in c# to do this.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
数学..::.Round 方法(小数、Int32、中点舍入)
将双精度浮点值舍入为指定的小数位数。参数指定当该值位于两个其他数字之间时如何舍入该值。
Math..::.Round Method (Decimal, Int32, MidpointRounding)
Rounds a double-precision floating-point value to the specified number of fractional digits. A parameter specifies how to round the value if it is midway between two other numbers.
你尝试过吗
Did you try