首页 > 解决方案 > 将十进制数的小数部分四舍五入为设定值

问题描述

我希望数字的小数部分更改为自定义值。

例如:

所以我想将数字四舍五入为 99。使用 .NET,我该怎么做?

标签: .netroundingdecimalformat

解决方案


这会将带小数的值“四舍五入”.99并保持其他值不变。

decimal Round99(decimal value) => 
  value % 1 == 0 ? 
      value : 
      value < 0 ? 
          decimal.Floor(value) + 0.01M :
          decimal.Ceiling(value) - 0.01M;

结果:

1.999 --> 1.99
1.5   --> 1.99
1     --> 1
-1.5  --> -1.99

推荐阅读