vb八進位的加法

誠徵高手

用vb程式寫出八進位的加法

急需

附贈20點

感謝

已更新項目:

可以幫我寫出來ㄇ

1 個解答

評分
  • 匿名使用者
    1 0 年前
    最佳解答

    就把兩個八進位的數值轉成十進位

    再作家法

    最後把得到的數值轉成八進味即可

    2009-12-20 13:17:15 補充:

    設VB2005程式碼

    在Textbox1輸入被加數

    textbox2輸入加數

    2009-12-20 13:17:26 補充:

    Public Function cd(Dnum As Long, add As Byte) As String

    Dim u As Long, s As String, n

    n = Array("0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z")

    u = Dnum

    s = n(u Mod w)

    2009-12-20 13:17:35 補充:

    While u >= w

    u = u \ w

    s = n(u Mod w) & s

    Wend

    cd = s

    End Function

    2009-12-20 13:17:43 補充:

    Public Function dc(Cnum As String, w As Byte) As Long

    Dim s As String, v As Long, l As Long, i As Long

    For i = 1 To Len(Cnum)

    s = Mid(Cnum, i, 1)

    If s >= "A" Then

    v = Asc(s) - 55

    Else

    v = CLng(s)

    End If

    l = l + v * w ^ (Len(Cnum) - i)

    Next

    dc = l

    End Function

    2009-12-20 13:17:46 補充:

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

    dim a,b,c as long

    a=dc(Textbox1.text,8)

    b=dc(Textbox2.text,8)

    c=a+b

    Msgbox(cd(c,88))

    End sub

    2009-12-20 13:19:13 補充:

    Msgbox(cd(c,88))改為Msgbox(cd(c,8))

    參考資料: Sally的淺見
還有問題?馬上發問,尋求解答。