Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут
закрыты.
Читайте
требования к создаваемым темам.
-
Priest
-
- Начинающий

-
-
- Сообщения: 3
- Зарегистрирован: 19.10.2002 (Сб) 12:39
-
Priest » 17.09.2003 (Ср) 8:18
Допустим что число n 0 десятично, надо его перевести в двоичное по средствам VB 6.0 и наоборот...
-
Aleksej
-
- Продвинутый пользователь

-

-
- Сообщения: 191
- Зарегистрирован: 03.06.2003 (Вт) 9:58
Aleksej » 17.09.2003 (Ср) 9:04
Попробуй так:
- Код: Выделить всё
Private Function ConvertToBinary(ByVal lngQuotient As Long) As String
Dim strBinary As String
Dim strReturn As String
Dim i As Integer
i = 100
strBinary = String(i, "0")
Do While lngQuotient
Mid(strBinary, i, 1) = CStr(lngQuotient Mod 2)
lngQuotient = lngQuotient \ 2
i = i - 1
Loop
strReturn = Right(strBinary, 100 - i)
ConvertToBinary = strReturn
End Function
-
GSerg
-
- Шаман

-
-
- Сообщения: 14286
- Зарегистрирован: 14.12.2002 (Сб) 5:25
- Откуда: Магадан
GSerg » 17.09.2003 (Ср) 9:42
Ого
Зачем буфер большой сразу
Лучше потихонечку
- Код: Выделить всё
Private Function Bin(ByVal num As Long) As String
Dim i As Long
For i = 0 To num
If 2 ^ i > num Then Exit For
Bin = IIf(num And 2 ^ i, "1", "0") + Bin
Next
If Len(Bin) = 0 Then Bin = "0"
End Function
Как только вы переберёте все варианты решения и не найдёте нужного, тут же обнаружится решение, простое и очевидное для всех, кроме вас
-
Priest
-
- Начинающий

-
-
- Сообщения: 3
- Зарегистрирован: 19.10.2002 (Сб) 12:39
-
Priest » 17.09.2003 (Ср) 10:52
Фенькс за то что быстро ответили, всё отлично, всё работает... переводит из десятичной в двоичну... но всё былобы ещё лучше, еслиб вы предложили и обратную функцию... чтоб из двоичной в десятичную...
-
Amed
-
- Алфизик

-
-
- Сообщения: 5346
- Зарегистрирован: 09.03.2003 (Вс) 9:26
-
Amed » 17.09.2003 (Ср) 17:34
'На форме кнопка cmdStart и текстовое поле txtBin
'НЕТ проверки на правильность ввода двоичного числа...
Public Function BinToDex(Bin As String) As Long
Dim i As Long
For i = 1 To Len(Bin)
BinToDex = BinToDex + CLng(Mid$(Bin, i, 1)) * 2 ^ (Len(Bin) - i)
Next i
End Function
Private Sub cmdStart_Click()
MsgBox BinToDex(txtBin.Text)
End Sub
Вернуться в Visual Basic 1–6
Кто сейчас на конференции
Сейчас этот форум просматривают: С.Т., SemrushBot, Yandex-бот и гости: 2