vb.net – 舍入到2.5的增量?

我需要将值舍入到最接近的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将始终向上舍入非整数,因此您不需要进行后期调整.

相关文章

Format[$] ( expr [ , fmt ] ) format 返回变体型 format$ 强...
VB6或者ASP 格式化时间为 MM/dd/yyyy 格式,竟然没有好的办...
在项目中添加如下代码:新建窗口来显示异常信息。 Namespace...
转了这一篇文章,原来一直想用C#做k3的插件开发,vb没有C#用...
Sub 分列() ‘以空格为分隔符,连续空格只算1个。对所选...
  窗体代码 1 Private Sub Text1_OLEDragDrop(Data As Dat...