eXeLab
eXeL@B ВИДЕОКУРС !

ВИДЕОКУРС ВЗЛОМ
выпущен 12 ноября!


УЗНАТЬ БОЛЬШЕ >>
Домой | Статьи | RAR-cтатьи | FAQ | Форум | Скачать | Видеокурс
Новичку | Ссылки | Программирование | Интервью | Архив | Связь

Русский / Russian English / Английский

Сейчас на форуме: (+3 невидимых)
 · Начало · Статистика · Регистрация · Поиск · ПРАВИЛА ФОРУМА · Язык · RSS · SVN ·

 eXeL@B —› Оффтоп —› Странное округление
Посл.ответ Сообщение


Ранг: 988.8 (! ! !)
Статус: Участник

Создано: 16 июля 2015 23:48 New!
Цитата · Личное сообщение · #1

есть длина - L, и есть количество частей - N
есть какое то странное M, где M = ( (N/2) + L ) /N

похоже на какое то окруление в большую сторону, но математческого примера в гугле не нахожу
если убрать N/2, то M = L/N будет размер одной части

вопрос, зачем там N/2 ? , и есть ли математическое объяснения этому в какой нибудь литературе ?


Ранг: 122.7 (ветеран)
Статус: Участник
Qt Developer

Создано: 17 июля 2015 10:19 New!
Цитата · Личное сообщение · #2

reversecode пишет:
есть ли математическое объяснения этому в какой нибудь литературе ?


--> Link <--


Ранг: 988.8 (! ! !)
Статус: Участник

Создано: 17 июля 2015 10:31 New!
Цитата · Личное сообщение · #3

есть округление [a+0.5], то есть +1/2
но здесь N/2 и оно явно побольше будет

похоже на какое то округление размера одной части в большую сторону


Ранг: 122.7 (ветеран)
Статус: Участник
Qt Developer

Создано: 17 июля 2015 10:56 · Поправил: 17 июля 2015 10:57 hors New!
Цитата · Личное сообщение · #4

reversecode пишет:
есть округление [a+0.5], то есть +1/2
но здесь N/2 и оно явно побольше будет


Хотел было картинку с фейспалмом вставить, но с зеленым слоном в гугле не нашёл.
Что значит "здесь N/2 и оно явно побольше будет"?
А упростить свою формулу "( (N/2) + L ) /N" до "L/N+0.5" сам не можешь?

| Сообщение посчитали полезным: reversecode



Ранг: 988.8 (! ! !)
Статус: Участник

Создано: 17 июля 2015 11:02 · Поправил: 17 июля 2015 11:15 reversecode New!
Цитата · Личное сообщение · #5

мозг устал, поэтому да, не мог

Добавлено спустя 11 минут
продолжение

есть N которое меняется с течением времени
есть таймер который работает с частотой 5000 миллисекунд
и по таймеру высчитывается K = K + (N-K) * 0.026 после чего N обнуляется

для вывода пользователю процентов используется K*0.2

предполагаю что K это какая то скорость
непонятно к чему там коэффициенты 0.026 и 0.2

| Сообщение посчитали полезным: hors



Ранг: 122.7 (ветеран)
Статус: Участник
Qt Developer

Создано: 17 июля 2015 11:36 · Поправил: 17 июля 2015 11:45 hors New!
Цитата · Личное сообщение · #6

reversecode пишет:
непонятно к чему там коэффициенты 0.026 и 0.2


Почему 0.2 - понятно.

Это 1/5 от полученного значения за 5000 мс, то есть за 1000 мс(одну секунду).

0.026 тут, не зная контекста, можно только гадать.
К примеру 0.026 радиан это 1.5 градуса.


Ранг: 988.8 (! ! !)
Статус: Участник

Создано: 17 июля 2015 11:43 · Поправил: 17 июля 2015 11:49 reversecode New!
Цитата · Личное сообщение · #7

используются байты, значит к коэффициенту 0.026 можно как то привязать число 1024

не нифига, там и кроме байт счетчиков, обычные счетчики всякие есть

Добавлено спустя 6 минут
hors пишет:
0.026 тут, не зная контекста, можно только гадать.

контекст обычный,начиная от байт счетчиков пакетов, заканчивая счетчиками подключения

в последующих версиях программы значение еще более уточнено 0.0260000005364418


Ранг: 281.5 (наставник)
Статус: Участник

Создано: 17 июля 2015 12:53 New!
Цитата · Личное сообщение · #8

Интересная константа, много где используется, но до 1.5 градусов ей немного не хватает. 1.5 будет 0,026179938779914943653855361527329. Где используется:

1.
--> Link <--

# Wavelength Value
....
....
3600 0.0260000005364418
....
....
5190 0.0260000005364418

2.
[TrueType]
nickname = DebugText
font = FixedSys
fixed_height = 0.0260000005364418

3.
--> Link <--
Organism Homo sapiens
Characteristics tissue: blood (buffy coat)
cod er (receptor: 1=positive 2=negative 9=unknown): NaN
cod pr (receptor: 1=positive 2=negative 9=unknown): NaN
cod her2 (receptor: 1=positive 2=negative 9=unknown): NaN
bmi: 24.1727275848389
birth: '16/04/1937'
age menarche: 14
age menopause: 46
mother bc: 0
sister with bc: 0
age 1 b: 23
insulin: 4
sex hormone binding protein: 103.719223022461
insulin growth factor 1: 110
e2_orion: 0.0260000005364418

| Сообщение посчитали полезным: hors



Ранг: 988.8 (! ! !)
Статус: Участник

Создано: 17 июля 2015 13:04 · Поправил: 17 июля 2015 13:06 reversecode New!
Цитата · Личное сообщение · #9

гуглить я умею
но константа ориона здесь как то не к месту
N которое меняется с течением времени используется в разных счетчиках
самый банальный это количество подключений пользователей к серверу
была мысль что именно 0.026 как то завязано на 5000 миллисекундах
или какая то корреляция с размерностью двойного беззнакового uint, может как защита от переполнения
но выглядит это слишком натянуто


Ранг: 122.7 (ветеран)
Статус: Участник
Qt Developer

Создано: 17 июля 2015 13:13 · Поправил: 17 июля 2015 14:56 hors New!
Цитата · Личное сообщение · #10

DenCoder пишет:
но до 1.5 градусов ей немного не хватает. 1.5 будет 0,026179938779914943653855361527329


Глупости.

1.5 градуса это в радианах 1.5*(число Пи)/180.
А "число Пи" как известно является иррациональным числом. Поэтому нельзя сказать что "0.026" это неправильно,
а "0.026179938779914943653855361527329" правильно.
В обоих случая имеют место быть округления.

Добавлено спустя 1 час 3 минуты
reversecode пишет:
в последующих версиях программы значение еще более уточнено 0.0260000005364418


DenCoder пишет:
Интересная константа, много где используется


У меня уже слов нет, одни эмоции. Что за чушь вы оба несёте?

Ничего в последующих версиях не менялось. Константа осталась прежняя "0.026"

0.0260000005364418 это представление дробного числа "0.026" типа float приведенного к типу double(Ну или что-то подобное).

Вот картинка для наглядности:

| Сообщение посчитали полезным: DenCoder



Ранг: 988.8 (! ! !)
Статус: Участник

Создано: 17 июля 2015 16:54 New!
Цитата · Личное сообщение · #11

никто ничего ненесет, я по твоему должен знать ноюансы приедения двух типов?
я смотрю в код
Code:
  1. .rdata:060BEE48     byte_60BEE48    db 0  
  2. .rdata:060BEE49                     db    0
  3. .rdata:060BEE4A                     db    0
  4. .rdata:060BEE4B                     db  80h ; А
  5. .rdata:060BEE4C                     db 0BEh ; -
  6. .rdata:060BEE4D                     db  9Fh ; Я
  7. .rdata:060BEE4E                     db  9Ah ; Ъ
  8. .rdata:060BEE4F                     db  3Fh ; ?
  9.  
  10.  
  11. .rdata:060BEE48     dbl_60BEE48     dq 0.0260000005364418


Code:
  1. .rodata:084CAA10     _0__0_26_dbl_84CAA10 db 39h 
  2. .rodata:084CAA11                     db 0B4h ; +
  3. .rodata:084CAA12                     db 0C8h ; L
  4. .rodata:084CAA13                     db  76h ; v
  5. .rodata:084CAA14                     db 0BEh ; -
  6. .rodata:084CAA15                     db  9Fh ; Я
  7. .rodata:084CAA16                     db  9Ah ; Ъ
  8. .rodata:084CAA17                     db  3Fh ; ?
  9.  
  10. .rodata:084CAA10     _0__0_26_dbl_84CAA10 dq 0.026


оба числа в double
меньшую часть отбросил компилятор когда приводил типы


Ранг: 988.8 (! ! !)
Статус: Участник

Создано: 10 августа 2015 17:37 New!
Цитата · Личное сообщение · #12

есть подозрение что 0.026 участвует в расчетах DecayingCounter
--> Link <--
--> Link <--

Ранг: 366.5 (мудрец)
Статус: Участник
"Тибериумный реверсинг"

Создано: 12 августа 2015 19:39 New!
Цитата · Личное сообщение · #13

не совсем в тему, гулял по нету - нашел такой сайт по вопросу "быстрой и наглядной конвертации во всё и сразу":
http://www.convert-units.info/time/second/0.026
 eXeL@B —› Оффтоп —› Странное округление

У вас должно быть 20 пунктов ранга, чтобы оставлять сообщения в этом подфоруме, но у вас только 0


Оригинальный DVD-ROM: eXeL@B DVD !

Вы находитесь на форуме сайта EXELAB.RU
Проект ReactOS