Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
да, но если:
то все нормально.
A100:
не понял. В чем косяк?
Осталось убедиться, что все нормально будет для любого числа x
Конечно не будет...
Ведь если происходит такое:
то, вопросы не ко мне и не к этой идее.
В чем косяк?
см. предыдущее мое сообщение
то, вопросы не ко мне и не к этой идее.
я думаю что все эти вышеперечисленные огрехи выходят за рамки практического использования данного решения ускорения округления положительных чисел, т.к. мало кому нужны точности на уровне 16 знака. А косяки эти возникают из различных рода переполнениях на уровнях дцатых знаков самого компилятора.
floor(), ceil(), round() для того и существуют - чтобы не было вопросов
Я ж не запрещаю вам их использовать. Пользуйтесь на здоровье. Сам их буду использовать. Но если я создаю алгоритм, где важна скорость, я буду юзать этот вариант округления с учетом всех нюансов данного способа. Я думаю другим программистам будет тоже полезно знать о существовании такой альтернативы. Для того чтобы знать о нюансах данного способа округления - как раз и необходимо обсуждение. За что всем большое спасибо. Разве я не прав?
DBL_MIN и DBL_EPSILON не работают - слишком маленькие. Наверное имеет смысл оставить 0.9999999999999999 (16 девяток- максимальное число знаков после запятой в double)
Так DBL_EPSILON - это и есть 16 знаков после запятой: 2.2204460492503131e-016
А в вашем случае получается фактически единица, т.к. разница составляет всего 1e-16, что в 2 раза меньше epsilon.
Так DBL_EPSILON - это и есть 16 знаков после запятой: 2.2204460492503131e-016
А в вашем случае получается фактически единица, т.к. разница составляет всего 1e-16, что в 2 раза меньше epsilon.
Да, я это понял, но не работает. Оказывается и не работает с 16 девятками (странно, вроде раньше получалось). Работает только с 15 девятками.