十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
VB有Round()函数,但是是四舍五入,你的这个需要编写一个过程或函数:
创新互联建站服务项目包括深圳网站建设、深圳网站制作、深圳网页制作以及深圳网络营销策划等。多年来,我们专注于互联网行业,利用自身积累的技术优势、行业经验、深度合作伙伴关系等,向广大中小型企业、政府机构等提供互联网行业的解决方案,深圳网站推广取得了明显的社会效益与经济效益。目前,我们服务的客户以成都为中心已经辐射到深圳省份的部分城市,未来相信会继续扩大服务区域并继续获得客户的支持与信任!
Dim AA As String '模块级变量
Private Sub Command1_Click()
Dim XX As Single, YY As Single '过程级变量
XX = Val(Text1.Text)
If AA = "整数" Then
If XX / 1 - XX \ 1 = 0 Then '判断小数部分是否小于0.5
YY = Round(XX, 0) + 1
ElseIf XX / 1 - XX \ 1 0 Then '判断小数部分是否大于0.5
YY = Round(XX, 0)
End If
ElseIf AA = "小数" Then
If XX / 1 - XX \ 1 = 0 Then '判断小数部分是否小于0.5
YY = Round(XX, 1) + 0.1
ElseIf XX / 1 - XX \ 1 0 Then '判断小数部分是否大于0.5
YY = Round(XX, 1)
End If
End If
Text2.Text = YY
End Sub
Private Sub Form_Load()
Option1(0).Value = True
End Sub
Private Sub Option1_Click(Index As Integer)
If Option1(0).Value = True Then
AA = "整数"
Else
AA = "小数"
End If
End Sub
'自定义一个函数:功能是给小数直接进一位
'num 要操作的小数
'n 保留几位小数,
Function getNumber(num As Double, n As Integer) As Double
Dim a As Double
a = Int(num * (10 ^ n)) / (10 ^ n)
If a = num Then
getNumber = a
Else
getNumber = a + 1 / (10 ^ n)
End If
End Function
-------------------------
调用一下:
Private Sub Command1_Click()
MsgBox (getNumber(3.1415926, 2))
End Sub
得到3.15
保留两位小数的一般方法是四舍五入法。
保留两位小数,看千分位。是4或比4小舍去;是5或比5大舍去以后向前一位进1。
如:3.425保留两位小数就是3.43
3.421保留两位小数就是3.42
又如: 3.4263保留两位小数就是3.43
3.4233保留两位小数就是3.42
再如:3.4保留两位小数就是3.40