
Подскажите пожалуйста, как мне решить данную проблему:
Label1.Caption = однобайтному двоичному числу (напр. 00101001).
Каким образом его можно преобразовать в десятичное, с записью
результата в Label2.Caption?
Заранее спасибо. Гоблин.
Модератор: Naeel Maqsudov
Код: Выделить всё
Public Function Bin2Dec(bin) As Integer
Dim n As Integer
Dim dk As Integer
dec = 0
i = 0
Do While bin > 0
dec = dec + (bin Mod 10) * 2 ^ i
bin = bin \ 10
i = i + 1
Loop
Bin2Dec = dec
End Function
Код: Выделить всё
Label2.Caption=CStr(Bin2Dec(Val(Label1.Caption)))
Код: Выделить всё
Dim i as integer, k as integer
Dim n as long
Dim s as string
s = label1.caption
n = 0
k = Len(s)
For i = k To 1 Step -1
Select Case Mid$(s, i, 1)
Case "1"
n = n + 2 ^ (k - i)
Case "0"
End Select
Next i
Label2.Caption = str(n)