powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / НУ ПОЧЕМУ ТАК ВСЕ ПЛОХО? 2**64+1 = 2**64
8 сообщений из 8, страница 1 из 1
НУ ПОЧЕМУ ТАК ВСЕ ПЛОХО? 2**64+1 = 2**64
    #32610044
gguest
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
 2 ** 64 + 1  =  2 ** 64 
...
Рейтинг: 0 / 0
НУ ПОЧЕМУ ТАК ВСЕ ПЛОХО? 2**64+1 = 2**64
    #32610172
Фотография ВладимирМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Посмотри здесь

http://www.foxclub.ru/kb/index.php?sid=35321&aktion=artikel&rubrik=004&id=103&lang=ru

Раздел "Точность расчета"
...
Рейтинг: 0 / 0
НУ ПОЧЕМУ ТАК ВСЕ ПЛОХО? 2**64+1 = 2**64
    #32610327
gguest
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
to ВладимирМ
От этого-то и грустно !
...
Рейтинг: 0 / 0
НУ ПОЧЕМУ ТАК ВСЕ ПЛОХО? 2**64+1 = 2**64
    #32610393
Фотография ВладимирМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Почему собственно?

FoxPro - это прежде всего СУБД. А Вы требуете от него точности расчета в 20 (!) знаке. Если Вам требуется такая высокая точность, то для этого существуют специализированные языки программирования.

Для подавляющего количества задач класса СУБД вполне хватает точности расчета до 14 знака. Обычно это ведь какие-то бухгалтерские программы и триллиона вполне хватает для большинства сумм. А если суммы больше, то я сомневаюсь, что кого-то будут волновать расхождения в копейках :).
...
Рейтинг: 0 / 0
НУ ПОЧЕМУ ТАК ВСЕ ПЛОХО? 2**64+1 = 2**64
    #32610499
Chuveljov Andrew
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Используйте внешние библиотеки для работы с большими цифрами.
___________________
Всё вышеизложенное есть моё частное мнение и не претендует на полноту изложения.
...
Рейтинг: 0 / 0
НУ ПОЧЕМУ ТАК ВСЕ ПЛОХО? 2**64+1 = 2**64
    #32611339
Crip
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
еще есть тип currency , у него точность выше на 3 знака чем у numeric
...
Рейтинг: 0 / 0
НУ ПОЧЕМУ ТАК ВСЕ ПЛОХО? 2**64+1 = 2**64
    #32611357
Фотография ВладимирМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Cripеще есть тип currency , у него точность выше на 3 знака чем у numeric

Crip - ты не прав! Точность расчета в FoxPro не зависит от типа данных. FoxPro всегда работает с 16 значащими цифрами, что означает точность расчета до 14 значащих цифр (15 и 16 - сомнительные, остальные - случайные). Подробнее читай по указанной выше ссылке.

Если же говорить о типе Currency, то его диапазон значений укладывается в те же 20 цифр, что и для типа Numeric просто такая точность диапазона значений для Currency (- 922337203685477.5807 to 922337203685477.5807) связана с физическим способом хранения данного типа, но никак не с точностью расчета
...
Рейтинг: 0 / 0
НУ ПОЧЕМУ ТАК ВСЕ ПЛОХО? 2**64+1 = 2**64
    #32611820
gguest
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вообще-то мне нужно было работать с Double не для расчетов, а для индекса. Пришлось использовать функцию BINTOC() - лишняя, но что делать.
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / НУ ПОЧЕМУ ТАК ВСЕ ПЛОХО? 2**64+1 = 2**64
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]