我需要将值舍入到最接近的2.5的倍数.
例如:
6 – > 7.5
7.6 – > 10
等等
这似乎是最好的方法吗?
Function RoundToIncrement(ByVal originalNumber As Decimal,ByVal increment As Decimal) As Decimal Dim num = Math.Round(originalNumber / increment,MidpointRounding.AwayFromZero) * increment If originalNumber Mod increment <> 0 And num < originalNumber Then num += increment End If Return num End Function
将数字除以2.5,向上舍入到最接近的整数,然后将结果乘以2.5.
你很亲密
Function RoundToIncrement(ByVal orignialNumber As Decimal,ByVal increment As Decimal) As Decimal Return Math.Ceiling( orignialNumber / increment ) * increment End Function
Math.Ceiling将始终向上舍入非整数,因此您不需要进行后期调整.
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。