|
|
« Предыдущая тема | Следующая тема » |
Опции темы | Опции просмотра |
|
|
|||||
Регистрация: Mar 2009
Сообщений: 6
|
Зачем нужны числа с порядком вида 3.000000E-003?
Часто попадаются в примерах и исходниках подобные числа. У Мука есть приятные простые примеры, вроде 12e2. Если число огромное, то его удобнее будет записать с Е тут все понятно.
Но вот попался пример с числом 5.170000E+001. 1 Зачем писать нули после запятой, почему не просто 5.17? 2 Зачем писать E+001, если правильно понимаю, то это 10 в степени 1. Т.е. усложнение записи . 3 Чем такая запись лучше просто 5.17? Почему её используют? Если вопрос поднимался уже, дайте, пожалуйста, ссылку. |
|
|||||
Регистрация: Nov 2008
Адрес: Атланта
Сообщений: 1,271
|
ну скорей всего данные исходники были выложены после декомпилирования, такое к сожалению попадаеться
__________________
Пока я жив, Вы горем обеспечены |
|
|||||
Почему, на паре статистике столкнулся с таким числом, решал квадратичную регрессию, цифр много, без калькулятора не обойтись. Калькулятор выдал число с подобным хвостом E+001. Не задумался, взял первые 3 цифры в ответ.
__________________
Не вытерпел, и опять сказал что-то умное :) Последний раз редактировалось св.demien; 04.03.2009 в 15:05. |
|
|||||
Регистрация: Mar 2009
Сообщений: 6
|
zurkis, спасибо ) такая мысль в голову не приходила. Если так, то все понятно
Главное, чтобы не было какого-нибудь хитрого правила, по которому нужно нормальные числа записывать таким образом. |
|
|||||
Загугли что нибудь про Е, что это такое вообще...возможно это связано с фамилией Эйлер. 90% что я ошибаюсь.
__________________
Не вытерпел, и опять сказал что-то умное :) |
|
|||||
буду краток
модератор форума
Регистрация: Sep 2003
Адрес: Ближайшее Замкадье
Сообщений: 3,110
Записей в блоге: 28
|
Цитата:
Почему была выбрана именно буква e, точно неизвестно. Возможно, это связано с тем, что с неё начинается слово exponential («показательный», «экспоненциальный»). Другое предположение заключается в том, что буквы a, b, c и d уже довольно широко использовались в иных целях, и e была первой «свободной» буквой. Неправдоподобно предположение, что Эйлер выбрал e как первую букву в своей фамилии (нем. Euler). В языках программирования символу e в экспоненциальных записях числовых литералов соответствует число 10, а не Эйлерово число. Это связано с историей создания и использования языка для математических вычислений FORTRAN: Таким образом, записи типа 7.38e-43 в языках программирования будет соответствовать число 7,38*10^{-43}, а не 7,38* 2,718^{-43}. ps косяк с тегом урл. Последняя ")" в ссылке выносится за тег
__________________
Отряд Котовскага Последний раз редактировалось Котяра; 04.03.2009 в 17:07. |
|
|||||
ну по крайней мере угадал с Эйлером
__________________
Не вытерпел, и опять сказал что-то умное :) |
|
|||||
loading 50%
|
Объясняю: компьютер на аппаратном уровне работает в двоичной системе исчисления, поэтому числовые величины записываются в виде с плавающей точкой - для удобства обработки компом. Суть в том, что не нужно писать две реализации алгоритма обработки - для целых и дробных чисел (а за одно для положительных и отрицательных) - все нормализовать в виде дробей с плавающей точкой, добавить разряд под знак и обрабатывать по универсальному алгоритму.
Используется это дело и в теории баз данных... Простейший пример: вот есть у Вас измерительный прибор с несколькими диапазонами работы. На индикаторе с фиксированным числом разрядов, значение не будет читаемым, если при переключении диапазонов отображать числа в обычном виде - реально отображается дробная величина, которую нужно домножить на диапазон - чтобы получить значение измеряемой величины. Если все записывать без целой части - в виде 0.xxxxxxxx E+xxx, то можно удобно представить широкий диапазон значений. - К примеру, построить график отложив по экспаненциальной шкале значения по оси - для конкретного диапазона все значения лягут между 0 и 1, что для построения сетки весьма удобно. |
|
|||||
Регистрация: Mar 2009
Сообщений: 6
|
aksios, спасибо за объяснение. Пока с такими задачами не сталкивалась, но теперь поняла где это может пригодиться.
Мне видимо действительно попались жертвы декомпиляции, т.к. код простой и необходимости в такой записи нет. P.S. Не удержалась потестить Пример: в декомпиляторе стал выглядеть как: P.S.2 Еще раз всем спасибо за ответы! |
Часовой пояс GMT +4, время: 09:49. |
|
« Предыдущая тема | Следующая тема » |
|
|