加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

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

发布时间:2020-12-17 00:19:04 所属栏目:大数据 来源:网络整理
导读:我需要将值舍入到最接近的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,Midpo
我需要将值舍入到最接近的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将始终向上舍入非整数,因此您不需要进行后期调整.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读