com*_*kph 3 .net c# decimal rounding
如果值大于0.7,我想舍入小数
样品:
decimal rate = 3.7
decimal roundoff = 4
decimal rate2 = 3.6
decimal roundoff2 = 3.6 //remain value coz its below 0.7
Run Code Online (Sandbox Code Playgroud)
我怎么能在c#中做到这一点?
Pat*_*man 15
您可以使用模数来计算余数:
decimal d = rate % 1 >= .7m ? Math.Ceiling(rate) : rate;
Run Code Online (Sandbox Code Playgroud)
您可以将此值用于负值:
return rate >= 0
? (rate % 1 >= .7m ? Math.Ceiling(rate) : rate)
: (Math.Abs(rate % 1) >= .3m ? Math.Floor(rate) : rate);
Run Code Online (Sandbox Code Playgroud)