parser

Написать ответ на текущее сообщение

 

 
   команды управления поиском

увы, неполностью описал. важные мелочи:

Александр Петросян (PAF) 12.12.2005 13:34 / 12.12.2005 13:35

первое: в double хранится фиксированное количество значащих бит, а не 15 десятичных знаков.
значащих бит там чуть больше, чем на 15 десятичных знаков. на 15 с хвостиком хватает. отсюда берутся вот эти псевдо "...43":
win32
0.85999999999999943000
linux
0.85999999999999943157

и второе:
при определённых обстоятельствах процессор вычисляет и хранит одно и то же число в виде
0.860000000000000 и
0.85(9)
именно отсюда проистекает необходимость всегда округлять.
именно поэтому форматные строчки (^double.format[%.2f]) делают всегда округление (они делают round).