powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Sybase ASA, ASE, IQ [игнор отключен] [закрыт для гостей] / Совершенно непонятный результат арифметических вычислений
3 сообщений из 3, страница 1 из 1
Совершенно непонятный результат арифметических вычислений
    #36360772
Isilion_new
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Выполняю следующий запрос:
Код: plaintext
1.
select   0 . 14  * power( 10 ,  4 ) as A0_14,
         0 . 15  * power( 10 ,  4 ) as A0_15;

И поражаюсь результату:
Код: plaintext
1.
2.
3.
 A0_14               A0_15    
 ------------------  -------- 
  1400 , 0000000000002    1500      

Это что за 1400,000000000000 2 ?
И причем эта добавка появляется только с 0.14. Ни 0.15, ни 0.13, ни 0.04, ни любые другие числа с которыми я эксперементировал не дают такой фигни :(
Что это и как с этим бороться?

SyBase ASA v9
...
Рейтинг: 0 / 0
Совершенно непонятный результат арифметических вычислений
    #36360854
dlukyanov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
подобный вопрос уже обсуждался
http://sql.ru/forum/actualthread.aspx?tid=718042

так себя ведут типы float, double, ...
т.к. это неточные типы.

в других языках, в С++, Java, итд. - то-же самое.
некоторые языки например PowerBuilder скрывают это проводя специальное округление.
...
Рейтинг: 0 / 0
Совершенно непонятный результат арифметических вычислений
    #36361114
Фотография Ggg_old
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Про представление чисел с плавающей запятой:
http://en.wikipedia.org/wiki/Single_precision_floating-point_format
...
Рейтинг: 0 / 0
3 сообщений из 3, страница 1 из 1
Форумы / Sybase ASA, ASE, IQ [игнор отключен] [закрыт для гостей] / Совершенно непонятный результат арифметических вычислений
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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