The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



"Компания Google анонсировала язык программирования Dart 2"
Версия для распечатки Пред. тема | След. тема
Форум Разговоры, обсуждение новостей
Исходное сообщение [ Отслеживать ]
Заметили полезную информацию ? Пожалуйста добавьте в FAQ на WIKI.
. "Компания Google анонсировала язык программирования Dart 2" +2 +/
Сообщение от какойто другой аноним (?), 25-Фев-18, 14:04 
>> Смешит некомпетентность
> Дописывать лишние нули в мантису это по IEEE?

[...]
> Не вызывает никаких переполнений и исключений.
> На лицо рукожопистость выскокоуровневых кодеров.

Никто ничего не дописывает.
Просто в описанном в IEEE 754 способе кодирования чисел невозможно точно представить числа 0.1 и 0.2. Эти числа в двоичной системе счисления записываются как бесконечная периодическая дробь, которая на каком-то уровне должна быть обрезана и округлена.

>>> (0.1).hex()

'0x1.999999999999ap-4'
>>> (0.2).hex()

'0x1.999999999999ap-3'

как видно, оба раза числа представлены с небольшим избытком, поэтому и сумма такая,
>>> (0.1+0.2).hex()

'0x1.3333333333334p-2'

хотя для 0.3 более точным представлением является
>>> (0.3).hex()

'0x1.3333333333333p-2'

Коллега, если вас не затруднит - покажите как у вас представилось в памяти 0.1 и 0.2.

Ответить | Правка | Наверх | Cообщить модератору

Оглавление
Компания Google анонсировала язык программирования Dart 2, opennews, 24-Фев-18, 21:38  [смотреть все]
Форумы | Темы | Пред. тема | След. тема



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру