C6.3 9056 АВС
В словаре поле базы данных *.TPS было описано как REAL @N10_. Потребовалось изиенить его на REAL @N16_.
И тут начались чудеса. Из проги вводится 16 цифр но две последние округляет (вместо 218 пишет 220)
Если вводить число в это поле в словаре,получается то же самое. А если вводить в пустое поле, вводит только 10 цифр. Что это может быть?
Поле REAL
Модератор: Дед Пахом
Правила форума
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
-
- Ветеран
- Сообщения: 390
- Зарегистрирован: 26 Август 2009, 12:41
- Откуда: Moscow
- Контактная информация:
Re: Поле REAL
Добрый день!
ВСЕ НАПИСАНО В ДОКЕ:
REAL An eight-byte floating point number.
Format: ± exponent significand
| . | ........... | ..................... |
Bits:63 62 52 0
Range: 0, ± 2.225073858507201e-308 .. ± 1.79769313496231e+308
(15 significant digits)
Отсюда и округления.
Алексей
ВСЕ НАПИСАНО В ДОКЕ:
REAL An eight-byte floating point number.
Format: ± exponent significand
| . | ........... | ..................... |
Bits:63 62 52 0
Range: 0, ± 2.225073858507201e-308 .. ± 1.79769313496231e+308
(15 significant digits)
Отсюда и округления.
Алексей
- WadimZapara
- Активист
- Сообщения: 181
- Зарегистрирован: 11 Июнь 2008, 12:11
- Откуда: Тамбов
Re: Поле REAL
Вам написали: тип REAL имеет точность только 15 значащих цифр. Шестнадцатую цифру округляет по определению типа.
Вывод:
А) использовать не более 15 знаков
либо
Б) использовать другой тип
Вывод:
А) использовать не более 15 знаков
либо
Б) использовать другой тип
Компьютер имеет то преимущество перед мозгом, что им пользуются...