![]() |
Модераторы: LSD, AntonSaburov |
![]() ![]() ![]() |
|
Muerto |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1207 Регистрация: 23.9.2006 Репутация: нет Всего: 4 |
double value = номер от одного до ста / 100.0;
Это для звука. Но я не понимаю что именно происходит тут (Math.log(value==0.0?0.0001:value)/Math.log(10.0)*20.0); |
|||
|
||||
Samotnik |
|
|||
![]() Super star ! ![]() ![]() ![]() ![]() Профиль Группа: Awaiting Authorisation Сообщений: 7192 Регистрация: 4.11.2006 Где: Минск City Репутация: 8 Всего: 191 |
это формула, кот приводиться с float, далее
Math.long - это логарифм, далее если value = 0.0, то записывается 0,0001, иначе записывается value, далее эта вся красота делиться на логарифм 10, а потом умножается на 20 |
|||
|
||||
kkorsakoff |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 378 Регистрация: 18.10.2005 Где: Санкт-Петербург Репутация: 3 Всего: 14 |
А что именно не понятно?
формула такова f(n)=ln(value)/ln(10)*20 Причем проверяется условие, что value не равно нулю. Если оно будет равно нулю, то результатом ln будет бесконечность (за знаком минус), и как следствие исключение. Чтобы такого не было, происходит проверка. Если value==0.0, то оно выставляется в 0.0001. |
|||
|
||||
goodday1941 |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 709 Регистрация: 16.7.2006 Где: Украина, Киев Репутация: 1 Всего: 9 |
помоему эксепш не выбрасываеться... недавно пришлось поработать слегка с библиотекой Math дык он мне в случае бесконечности в стэктрейс Infinity писал ![]() -------------------- SCJP 6 |
|||
|
||||
kkorsakoff |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 378 Регистрация: 18.10.2005 Где: Санкт-Петербург Репутация: 3 Всего: 14 |
Прикольно. Возможно и так, но тогда непонятно зачем тогда наворотили проверку. Видимо от чего-то они все-таки спасались
![]() |
|||
|
||||
fixxer |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 672 Регистрация: 14.9.2006 Где: Саратов, Россия Репутация: 6 Всего: 27 |
Скорее даже изначальная формула f(value)=lg(value)*20 Дело в том, что Math.log10(double) появился только в java 5. -------------------- ![]() |
|||
|
||||
Muerto |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1207 Регистрация: 23.9.2006 Репутация: нет Всего: 4 |
Большое спасибо,я понял...
|
|||
|
||||
Muerto |
|
||||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1207 Регистрация: 23.9.2006 Репутация: нет Всего: 4 |
мммм, чет не пойму,А зачем надо
если это = 1 ??? Добавлено через 3 минуты и 54 секунды написал
выдало 2.302585092994046 значит мы имеем дело с логорифом у каторого внизу "E" тоесть ln а не log ??????? |
||||
|
|||||
chief39 |
|
|||
![]() карманная тигра ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1631 Регистрация: 20.5.2005 Где: Киев Репутация: 15 Всего: 77 |
Угу. От нуля ![]() ЗЫ: название темы жжот! ![]() ![]() -------------------- Люди - это свечи. Они либо горят, либо их - в жопу!(с) |
|||
|
||||
Metal_Heart |
|
||||||||
а почему бы и нет? ![]() ![]() Профиль Группа: Участник Сообщений: 728 Регистрация: 31.3.2005 Где: Москва Репутация: 4 Всего: 12 |
тебе же сказали, что:
поэтому, используется формула приведения логарифма к произвольному основанию ![]() -------------------- не стыдно учиться, а стыдно не учиться |
||||||||
|
|||||||||
![]() ![]() ![]() |
Правила форума "Java" | |
|
Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux, javastic. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Java: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |