Консультация № 130263
02.04.2008, 20:00
0.00 руб.
0 3 3
Здравствуйте, Уважаемые Эксперты! Прошу помочь с программой: неоходимо разработать универсальную программу перевода чисел из одной системы счисления в другую (в том числе и дробные числа). Подскажите какой-либо алгоритм, сайт или статью. Очень признателен!

Обсуждение

Неизвестный
02.04.2008, 22:15
общий
это ответ
Здравствуйте, Lordaleksej!
В Visual Basic 2005 есть замечательный набор методов System.Convert
Переводит практически из любой системы в любую!
И не требуется никаких "шаманских" процедур по переводу, коими я сам раньше увлекался ;)
Неизвестный
02.04.2008, 23:29
общий
это ответ
Здравствуйте, Lordaleksej!
Обсуждения алгоритмов перевода из одной системы счисления в другую Вы можете посмотреть здесь:
Системы счисления., Перевод чисел из одной в другую - <a href=http://forum.sources.ru/index.php?showtopic=42165>ссылка</a>

Рабочий код перевод чисел из 10й системы счисления в любую по выбору- <a href=http://forum.codeby.net/lofiversion/index.php/t19197.html>ссылка</a> ответ WeBsteR

<p><fieldset style=‘background-color:#EFEFEF; width:80%; border:#777777 1px solid; padding:10px;‘ class=fieldset><font color=#777777><i>Длинные ссылки.</i>
-----
</font><font color=#777777 size=1><b>• Отредактировал: <a href=http://rusfaq.ru/info/user/18359 target=_blank>Николай Владимирович / Н.В.</a></b> (Профессор)
<b>• Дата редактирования:</b> 02.04.2008, 23:32</font></fieldset>
Неизвестный
03.04.2008, 17:44
общий
это ответ
Здравствуйте, Lordaleksej!
В VBA, VB имеется тип Boolean - для хранения логических (булевых) значений, которые сохраняются как 16-разрядные (двухбайтовые) числа, но могут иметь только значения True или False. Переменные типа Boolean отображаются как строковые значения True или False при использовании метода Print. Для присваивания переменным логических значений ИСТИНА или ЛОЖЬ следует использовать ключевые слова True или False.
При преобразовании других числовых типов данных к типу Boolean значение 0 преобразуется в False, а все остальные значения преобразуются в True. Если значения типа Boolean преобразуются к другим типам данных, то False превращается в 0, а True в -1.По умолчанию значением булевской переменной является False- ложь.
Любое число можно представить в двоичном виде, а полученный набор нулей и единиц рассматривать как булевский вектор. Для получения представления числа в двоичном виде можно использовать следующий код:
Sub пример8()
Dim b As String
Dim s As Single
Dim a As Integer
b = ""
s = CSng(InputBox("Введи десятичное", "Ввод данных", 255))
Do While s > 0
a = s Mod 2#
b = CStr(a) + b
s = (s) \ 2#
Loop
MsgBox b, vbOKOnly, "Результат"
End Sub

Для преобразования двоичного представления числа в его десятичное значение можно использовать следующий код:
Sub пример9()
Dim b As String
Dim i As Integer, l As Integer, k As Integer, j As Integer
b = InputBox("Введи двоичное", "Ввод данных", 11111111)
l = Len(b)
i = 0
For k = l To 1 Step -1
j = CInt(Mid(b, k, 1))
i = i + j * 2 ^ (l - k)
Next
MsgBox i, vbOKOnly, "Результат"
End Sub
Форма ответа