使用除余法把十进制转换成二进制
Public Function DecToBin(ByVal InputString As String) As String
Dim MyResult As String
Dim MyMod As Integer
Try
Dim MyData As Integer = CInt(InputString)
Do While MyData
MyMod = MyData Mod 2
MyData = MyData \ 2
MyResult = Trim(CStr(MyMod)) & MyResult
Loop
Catch ex As Exception
MsgBox("转换数据出现错误,最大可能是数据输入不符合规范")
End Try
Return MyResult
End Function
'使用幂乘法将二进制转换成十进制
Public Function BinToDec(ByVal InputString As String) As String
Dim MyLength, i, MyResult As Long
MyLength = InputString.Length
Try
For i = 0 To MyLength - 1
MyResult = MyResult + Val(Mid(InputString, i + 1, 1)) * (2 ^ (MyLength - i - 1))
Next
Catch ex As Exception
MsgBox("转换数据出现错误,最大可能是数据输入不符合规范")
End Try
Return CStr(MyResult)
End Function
'使用标准数字格式字符串进行十进制转换成十六进制
Public Function DecToHex(ByVal InputString As String) As String
Try
Dim MyData As Long = CInt(InputString)
Dim MyResult As String = MyData.ToString("X")
Return MyResult
Catch ex As Exception
MsgBox("转换数据出现错误,最大可能是数据输入不符合规范")
End Try
End Function
'使用幂乘法将十六进制转换成十进制
Public Function HexToDec(ByVal InputString As String) As String
Dim MyChar As String
Dim MyLength, i, MyResult As Long
Try
MyLength = InputString.Length
For i = 0 To MyLength - 1
MyChar = Mid(InputString, i + 1, 1)
Select Case MyChar
Case 0 : MyChar = 0
Case 1 : MyChar = 1
Case 2 : MyChar = 2
Case 3 : MyChar = 3
Case 4 : MyChar = 4
Case 5 : MyChar = 5
Case 6 : MyChar = 6
Case 7 : MyChar = 7
Case 8 : MyChar = 8
Case 9 : MyChar = 9
Case "A" : MyChar = 10
Case "B" : MyChar = 11
Case "C" : MyChar = 12
Case "D" : MyChar = 13
Case "E" : MyChar = 14
Case "F" : MyChar = 15
End Select
'从字符串中获取十进制的真实值
MyResult += Val(MyChar) * (16 ^ (MyLength - i - 1))
Next
Catch ex As Exception
MsgBox("转换数据出现错误,最大可能是数据输入不符合规范")
End Try
Return CStr(MyResult)
End Function
'使用除余法把十进制转换成其他进制
Public Function DecToOther(ByVal InputString As String, ByVal Other As String) As String
Dim MyResult As String
Dim MyMod As Integer
Dim n As Integer = CInt(Other)
Try
Dim MyData As Integer = CInt(InputString)
Do While MyData
MyMod = MyData Mod n
MyData = MyData \ n
MyResult = Trim(CStr(MyMod)) & MyResult
Loop
Catch ex As Exception
MsgBox("转换数据出现错误,最大可能是数据输入不符合规范")
End Try
Return MyResult
End Function
'使用幂乘法将其他进制转换成十进制
Public Function OtherToDec(ByVal InputString As String, ByVal Other As String) As String
Dim MyResult, i As Integer
Try
Dim MyLength As Integer = InputString.Length
Dim n As Integer = CInt(Other)
For i = 0 To MyLength - 1
MyResult += Val(Mid(InputString, i + 1, 1)) * (n ^ (MyLength - i - 1))
Next
Catch ex As Exception
MsgBox("转换数据出现错误,最大可能是数据输入不符合规范")
End Try
Return CStr(MyResult)
End Function
【MATLAB】数之间的转换
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.