Другие языки программирования и технологии
Мне сказали сделать калькулятор которые переводит двоичную числу на 16 через visual basic кто знает пожалуйста пишите к
Мне сказали сделать калькулятор которые переводит двоичную числу на 16 через visual basic кто знает пожалуйста пишите к
Удачник правильно написал, но возможен и такой вариант:
Кроме того, можно переводить в Hex и полный байт


Кроме того, можно переводить в Hex и полный байт

Алгоритм простой. Нужно разбить число на четверки (тетрады) , а потом перевести каждую тетраду из 2-ного в 16-ное по таблице:
0000=0, 0001=1, 0010=2, 0011=3, 0100=4, 0101=5, 0110=6, 0111=7,
1000=8, 1001=9, 1010=A, 1011=B, 1100=C, 1101=D, 1110=E, 1111=F
Но начинать нужно с конца, то есть справа!
Для этого, видимо, проще перевести число из числового формата в текстовый, а потом воспользоваться функцией Mid.
Dim A As String, B As String, C As String, i As Integer
A = Text1.Text
B = "": C = ""
For i = Len(A) To 1 Step -4
C = Mid(A, i-3, 4)
Select Case C
Case "0000": B = "0" & B
Case "0001": B = "1" & B
Case "0010": B = "2" & B
Case "0011": B = "3" & B
Case "0100": B = "4" & B
Case "0101": B = "5" & B
Case "0110": B = "6" & B
Case "0111": B = "7" & B
Case "1000": B = "8" & B
Case "1001": B = "9" & B
Case "1010": B = "A" & B
Case "1011": B = "B" & B
Case "1100": B = "C" & B
Case "1101": B = "D" & B
Case "1110": B = "E" & B
Case "1111": B = "F" & B
End Select
Next i
Text2.Text = B
End
0000=0, 0001=1, 0010=2, 0011=3, 0100=4, 0101=5, 0110=6, 0111=7,
1000=8, 1001=9, 1010=A, 1011=B, 1100=C, 1101=D, 1110=E, 1111=F
Но начинать нужно с конца, то есть справа!
Для этого, видимо, проще перевести число из числового формата в текстовый, а потом воспользоваться функцией Mid.
Dim A As String, B As String, C As String, i As Integer
A = Text1.Text
B = "": C = ""
For i = Len(A) To 1 Step -4
C = Mid(A, i-3, 4)
Select Case C
Case "0000": B = "0" & B
Case "0001": B = "1" & B
Case "0010": B = "2" & B
Case "0011": B = "3" & B
Case "0100": B = "4" & B
Case "0101": B = "5" & B
Case "0110": B = "6" & B
Case "0111": B = "7" & B
Case "1000": B = "8" & B
Case "1001": B = "9" & B
Case "1010": B = "A" & B
Case "1011": B = "B" & B
Case "1100": B = "C" & B
Case "1101": B = "D" & B
Case "1110": B = "E" & B
Case "1111": B = "F" & B
End Select
Next i
Text2.Text = B
End
можно по подробнее
Похожие вопросы
- Напомните, как переводить двоичное число в десятичное?
- Возведите число в степень циклом (Visual Basic)
- Продаю программу с исходниками на Visual Basic 2008 за 50 руб.
- Узнать сколько знаков после запятой в числе? Visual Basic
- Помогите пожалуйста. Visual Basic - массивы
- Подойдет ли самоучитель по Visual Basic .NET для освоения языка Basic, человеку не понимающему в программировании?
- Напишите код для visual basic 6 чтоб калькулятор работал в режим deg и rad ли напишите эту функцию
- Visual Basic или C#
- Помогите написать легкую программу в Visual Basic которая складывала бы 2 числа.
- Нужна помощь по Visual Basic