Форум сайта python.su
Как правильно узнать минимальное положительное целое число, не представимое точно в float и в десятичном в виде с мантисой = 7 и -9<=e<=9
Офлайн
yudyЭто в знаках или в битах?
с мантисой = 7
Офлайн
py.user.nextв знаках
Это в знаках или в битах?
Офлайн
wiki. мантисса
Я так понял, что это не длина мантисы (7 знаков), а значение (мантисса равна 7). А значение экспоненты равно от -9 до 9 включительно.
Если так, то 7e9 = 7000000000 и первое непредставимое минимальное целое число за ним - это 7000000001.
Отредактировано py.user.next (Апрель 9, 2017 04:29:07)
Офлайн
py.user.nextНет. Это количество значащих цифр
wiki. мантиссаЯ так понял, что это не длина мантисы (7 знаков), а значение (мантисса равна 7). А значение экспоненты равно от -9 до 9 включительно.Если так, то 7e9 = 7000000000 и первое непредставимое минимальное целое число за ним - это 7000000001.
Офлайн
yudy9.999999e9 = 9999999000 - это максимальное представимое число
Это количество значащих цифр
Офлайн
py.user.nextесли вычислять по формуле, то получается 9.000000е9 и следующее будет не представимо. Или я что-то не так понял?
9.999999e9 = 9999999000 - это максимальное представимое число
9999999001 - это первое целое число за ним
Офлайн
yudy9.999999 - это максимальная мантисса (7 знаков), с чего там нули у тебя?
если вычислять по формуле, то получается 9.000000е9 и следующее будет не представимо.
Отредактировано py.user.next (Апрель 10, 2017 03:17:24)
Офлайн
py.user.nextфомула значение= мантисса*10^exp (последнее целое в моем диапазоне 9, т.е. x = 9*10^exp)
Офлайн
yudyУ тебя задано только количество знаков в мантиссе и диапазон для экспоненты. А каждый знак в мантиссе равен цифре от 0 до 9. И мантисса всегда дробная сама по себе, но к дробности всего числа это не имеет отношения.
последнее целое в моем диапазоне 9
Мантисса из одного знака
1
1e5 = 100000
1e10 = 10000000000
1e-5 = 0.00001
1e-10 = 0.0000000001
Мантисса из двух знаков
1.1
1.1e5 = 110000
1.1e10 = 11000000000
1.1e-5 = 0.000011
1.1e-10 = 0.00000000011
Мантисса из трёх знаков
1.11
1.11e5 = 111000
1.11e10 = 11100000000
1.11e-5 = 0.0000111
1.11e-10 = 0.000000000111
Отредактировано py.user.next (Апрель 10, 2017 03:27:03)
Офлайн