Re[3]: получение дробной части от double и modf
От: MasterZiv СССР  
Дата: 16.11.09 06:46
Оценка:
needDrivers wrote:

> Не могли бы дать хорошие примеры или советы по работе с фиксированной

> точкой?

Ну, какие тут могут быть советы ...
Используй -- вот главный совет.
Отличай случаи, когда надо использовать, от случаев, когда не надо
(редко, и в основном -- статистические расчёты). Ну т.е. надо прежде
всего решить, какой тип арифметики использовать: точную или плавающую.
Если точная арифметика -- надо чётко понимать, как при вычислении
выражений округлять результаты, и в каком месте. Постановщики задач
часто об этом не думают, надо из них это вытрясать.
Если не будешь округлять, можно получить переполнение достаточно быстро.

Правило вычисления точности результата:

N1.M1 * N2.M2 = N1+N2.M1+M2 (если не ошибаюсь),
где
N1, N2 -- кол-во цифр до дес. точки,
M1, M2 -- кол-во цифр после дес. точки.

> Какой тип данных использовать для хранения чисел с фиксированной точкой


На клиенте СУБД нужно использовать либо типы данных, предоставляемые
клиентской библиотекой СУБД, если такие есть, либо какие-то универсальные
типы данных, предоставляемые языком, или библиотекой, или ещё чем-то
(как напр. currency в VB). Ну, или использовать библиотеки длинных
точных чисел, типа Gnu MP.
Posted via RSDN NNTP Server 2.1 beta
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.