Страница: 1 |
|
Вопрос: 10101010(+)
|
Добавлено: 18.02.04 20:30
|
|
Автор вопроса: Yozhik | Web-сайт: www.yozhik.tk | ICQ: 155203389
|
Как в Васике осуществить перевод из двоичной системы в десятичную и обратно? Помогите, очень надо... Заранее спасибо..
Ответить
|
Номер ответа: 1 Автор ответа: Sharp
Лидер форума
ICQ: 216865379
Вопросов: 106 Ответов: 9979
|
Web-сайт: sharpc.livejournal.com Профиль | | #1
|
Добавлено: 18.02.04 20:41
|
Гы. Наверно, что-то в этом роде: d=234 for i=int(log(d)/log(2)) to 0 k=2^i if d>k then res=res & "1" d=d-k else res=res & "0" end if next msgbox res для дес2дв и l=len(s) for i=1 to l if mid(s,i,1)="1" then res=res+2^(l-i) next msgbox res для дв2дес
Ответить
|
Номер ответа: 3 Автор ответа: boevik
Хранитель чата
ICQ: 137392264
Вопросов: 8 Ответов: 557
|
Web-сайт: www.hypertech.ru Профиль | | #3
|
Добавлено: 19.02.04 10:26
|
Попробуй такой код Function bin(ByVal l As Long) As String Do While l >= 2 bin = (l Mod 2) & bin l = Int(l / 2) Loop bin = l & bin End Function Function dec(ByVal s As String) As Long Dim i As Long For i = 1 To Len(s) dec = dec + Mid(s, i, 1) * 2 ^ (Len(s) - i) Next End Function
Запуск dec(bin(987215648))
Ответить
|
Номер ответа: 4 Автор ответа: boevik
Хранитель чата
ICQ: 137392264
Вопросов: 8 Ответов: 557
|
Web-сайт: www.hypertech.ru Профиль | | #4
|
Добавлено: 19.02.04 10:27
|
Попробуй такой код Function bin(ByVal l As Long) As String Do While l >= 2 bin = (l Mod 2) & bin l = Int(l / 2) Loop bin = l & bin End Function Function dec(ByVal s As String) As Long Dim i As Long For i = 1 To Len(s) dec = dec + Mid(s, i, 1) * 2 ^ (Len(s) - i) Next End Function
Запуск dec(bin(987215648))
Ответить
|
Номер ответа: 5 Автор ответа: Artificial Intelligence
ICQ: 275368971
Вопросов: 8 Ответов: 131
|
Профиль | | #5
|
Добавлено: 19.02.04 10:27
|
'Из двоичной в десятичную Function GetDec(ByVal Bin As String) As LongDim Order As IntegerDim Simbol As IntegerOrder = Len(Bin) - 1 For Simbol = 1 To Len(Bin)If Mid(Bin, Simbol, 1) = 1 Then GetDec = GetDec + (2 ^ Order)Order = Order - 1 NextEnd Function 'Из десятичной в двоичную Function GetBin (ByVal Dec As Long) As StringDim Remainder As IntegerDoRemainder = Dec Mod 2GetBin = Remainder & GetBin Dec = Int (Dec/2) Loop Until Dec = 0End Function
Ответить
|
Страница: 1 |
Поиск по форуму