VB初学者请教问题,望各位VB高手解答·!

来源:百度知道 编辑:UC知道 时间:2024/06/12 15:09:40
编写八进制数与十进制数相互转换的过程:
(1)过程readoctal,读入八进制数,然后转换为等值的十进制数。
(2)过程writeoctal,将十进制正整数以等值的八进制形式输出。

sub readoctal(x as string,y as long)'八进制数以字符串形式传入,以长整型输出十进制数
dim i as integer
y=0
for i=1 to len(x)
y=y+val(mid(x,i,1))*8^(len(x)-i)
next i
end sub

sub writeoctal(x as long,y as string)'以长整型传入十进制数,以字符串形式输出八进制数
y=""
do while x<>0
y=trim(str((x mod 8)))+y
x=x\8
loop
end sub

用途:将十进制转化为八进制
输入:Dec(十进制数)
输入数据类型:Long
输出:DEC_to_OCT(八进制数)
输出数据类型:String
输入的最大数为2147483647,输出最大数为17777777777
Public Function DEC_to_OCT(Dec As Long) As String
DEC_to_OCT = ""
Do While Dec > 0
DEC_to_OCT = Dec Mod 8 & DEC_to_OCT
Dec = Dec \ 8
Loop
End Function

用途:将八进制转化为十进制
输入:Oct(八进制数)
输入数据类型:String
输出:OCT_to_DEC(十进制数)
输出数据类型:Long
输入的最大数为17777777777,输出的最大数为2147483647
Public Function OCT_to_DEC(ByVal Oct As String) As Long
Dim i As Long
Dim B As Long