Форум программистов, компьютерный форум, киберфорум
Наши страницы
VBA
Войти
Регистрация
Восстановить пароль
 
uspu
0 / 0 / 0
Регистрация: 04.04.2017
Сообщений: 10
1

Нормализация чисел с плавающей запятой

15.05.2018, 20:41. Просмотров 151. Ответов 1
Метки нет (Все метки)

Здравствуйте. Пишу макросы для автоматической проверки лабораторных работ. Столкнулась с проблемой: не могу реализовать перевод чисел в нормализованную форму. Задача следующая нормализованное число перевести в двоичную систему счисления и нормализовать его уже в этой системе.
Остановилась на этапе, где перевела число в естественную форму, а после этого перевела его в двоичную систему.
что делать дальше, ума не приложу. Помогите, пожалуйста.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.05.2018, 20:41
Ответы с готовыми решениями:

Неверный результат при сравнении чисел с плавающей точкой
If (m_1c(i, 14) = m_bd(j, 5)) And (m_1c(i, 1) = m_bd(j, 1)) And (CDbl(m_1c(i,...

В строке имеется одна точка с запятой. Подсчитать количество символов до точки с запятой и после неё
В строке имеется одна точка с запятой. Подсчитать количество символов до точки...

Visual Basic 2013 сложение чисел, округление до 2 знаков после запятой, отбрасывание знаков
Как сложить несколько чисел из TextBox, округлить их, отбросить знаки после...

Нормализация таблицы excel
Нужна помощь в написании макроса который бы производил нормализацию таблицы до...

Вычисления с чисел с плавающей запятой
Есть в БД поле с числом (например 0,12). Формат в БД: Одинарное с плавающей...

1
Казанский
14159 / 5856 / 1537
Регистрация: 24.09.2011
Сообщений: 9,205
16.05.2018, 09:36 2
uspu, нужно получить двоичное представление числа с плавающей точкой, это?
https://ru.wikipedia.org/wiki/%D0%A7...81%D1%82%D0%B8
Можно просто скопировать содержимое переменной типа Double или Single в массив байт, дальше просто
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
'Excel 32 bit!
 
Declare Sub GetMem8 Lib "msvbvm60" (src As Any, dst As Any)
 
Function Dbl2Bits$(d#)
Dim b(0 To 7) As Byte, i&
  GetMem8 d, b(0)
  For i = 7 To 0 Step -1
'    Dbl2Bits = Dbl2Bits & " " & WorksheetFunction.Dec2Hex(b(i), 2) 'для сравнения
    Dbl2Bits = Dbl2Bits & " " & WorksheetFunction.Dec2Bin(b(i), 8)
  Next
  Dbl2Bits = Mid$(Dbl2Bits, 2)
End Function
Тест в Immediate
Код
?dbl2bits(1/3)
00111111 11010101 01010101 01010101 01010101 01010101 01010101 01010101
Добавлено через 8 минут
Можно онлайн сервис использовать: http://www.binaryconvert.com/convert_double.html
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
16.05.2018, 09:36

Произведение чисел с плавающей запятой
Требуется реализовать произведение чисел с плавающей запятой, длинных чисел, к...

Сложение чисел с плавающей запятой
Здравствуйте. Помогите разобраться в сложение чисел с плавающей...

Округление чисел с плавающей запятой
Здравствуйте товарищи программисты. Есть вопрос по функции FloatToStrF. Для...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru