Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
обрезание numeric числа, начиная с 17-го знака автоматически в FP6и8
|
|||
|---|---|---|---|
|
#18+
есть поле в таблице типа numeric 20,0 когда вводим в него число с количеством цифр большим 16 цифр, автоматически после ввода цифры после win98 : 16-го знака заменяются нулями winxp: 14-го знака заменяются нулями Подозрение на настройки fox'a или виндов. Но что за настройки? Помогите пожалуйста ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.11.2004, 23:44 |
|
||
|
обрезание numeric числа, начиная с 17-го знака автоматически в FP6и8
|
|||
|---|---|---|---|
|
#18+
Точность расчета Прежде чем говорить собственно о типах данных следует обратить внимание на точность расчета в FoxPro. В системных ограничениях FoxPro указано, что точность расчета ограничена 16 значащими цифрами. Значащие цифры - это все цифры числа, считая слева направо, исключая ведущие и завершающие нули (если есть), но включая цифры после символа разделителя целой и дробной части. Для чисел от 0 до 1, значащие цифры - это все цифры, начиная с нуля перед символом разделителем целой и дробной части, но исключая завершающие нули (если есть) Например, у числа 00010203.4050600 есть 10 значащих цифр, начиная с цифры 1 и заканчивая цифрой 6. А у числа 0.004050600 есть 8 значащих цифр, начиная с цифры 0 перед точкой и заканчивая цифрой 6. Опираясь на собственный опыт работы с FoxPro, могу сказать, что 16 - это не точность расчета, а просто количество знаков, с которыми работает FoxPro при математических расчетах. Между этими понятиями есть разница. Более того, судя по всему, на точность расчета могут оказывать влияние какие-то системные ограничения как самой операционной системы, так и "железа". Выполните такую проверку Код: plaintext 1. 2. 3. 4. 5. 6. На разных компьютерах этот простой тест может давать несколько отличные результаты. При наихудшем раскладе, реально окажутся заполненными только первые 14 разрядов, а остальные разряды окажутся заполненными нулями. При наилучшем раскладе, реально заполненными будут первые 16 разрядов, а остальные - также заполнены нулями. Таким образом, применительно к FoxPro можно говорить о том, что доверять можно только первым 14 значащим цифрам. Еще 2 цифры будут содержать сомнительные (но близкие к реальным) данные. А вот все значащие цифры, начиная с 17, будут недостоверны. Т.е. будут заполнены случайными данными. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.12.2004, 00:48 |
|
||
|
обрезание numeric числа, начиная с 17-го знака автоматически в FP6и8
|
|||
|---|---|---|---|
|
#18+
Вся арифметика для данных типа N в Fox реализована для скорости через числа с плавающей точкой (аналог double для C++, Delphi), т.к для этого формата существует аппаратная поддержка (команды процессора). Описание формата можно найти в литературе. Кратко: число представлено ввиде двоичной нормализованной мантиссы и двоичной экспоненты. Число двоичных разрядов мантиссы и определяет число значащих десятичных цифр - это и дает 15-17 значащих десятичных цифр не больше. По тойже причине в ячейке Excel вы будете иметь теже проблемы ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.12.2004, 06:56 |
|
||
|
обрезание numeric числа, начиная с 17-го знака автоматически в FP6и8
|
|||
|---|---|---|---|
|
#18+
Настройками тут не обойтись - меняйте тип данных. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.12.2004, 06:59 |
|
||
|
|

start [/forum/topic.php?fid=41&msg=32806734&tid=1595316]: |
0ms |
get settings: |
11ms |
get forum list: |
16ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
57ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
50ms |
get tp. blocked users: |
1ms |
| others: | 265ms |
| total: | 419ms |

| 0 / 0 |
