Здесь не нужная скорость, это делается один раз в ините или по событию ГУИ. Главное здесь нужна правильность работы. Откуда будет правильность работы, если выполняется деление дабла, да еще отбрасывание дробной части? Может оно каким-то чудом и работает правильно, но нужно убедительный тест провести.
Здесь не нужная скорость, это делается один раз в ините или по событию ГУИ. Главное здесь нужна правильность работы. Откуда будет правильность работы, если выполняется деление дабла, да еще отбрасывание дробной части? Может оно каким-то чудом и работает правильно, но нужно убедительный тест провести.
Ну если найдете баги (кроме значений типа 1кккк+) буду благодарен за подсказки.
И искать не буду, потому-что использовать не собираюсь. Просто интересно, откуда у вас такая уверенность, что все будет правильно?
Я проверил на рандомных котировках и произвольных цифрах типа 0.7,0.07, 50000000.9991 и т.п., и кроме этого провел сравнительные тесты по скорости. Я как раз если и буду использовать эту функцию, то не в инит а гораздо чаще. А так вообще если с бубнами не плясать, то обычного Digits вполне хватает...
Вот это вот: f/=0.0000001; вызывает сомнения.
Согласен, миллиарды в тестере могут подглючивать. в остальных случаях ничего страшного )
А вот так вдвое быстрее с тем же резалтом
А вот так вдвое быстрее с тем же резалтом
Здесь не нужная скорость, это делается один раз в ините или по событию ГУИ. Главное здесь нужна правильность работы. Откуда будет правильность работы, если выполняется деление дабла, да еще отбрасывание дробной части? Может оно каким-то чудом и работает правильно, но нужно убедительный тест провести.
Здесь не нужная скорость, это делается один раз в ините или по событию ГУИ. Главное здесь нужна правильность работы. Откуда будет правильность работы, если выполняется деление дабла, да еще отбрасывание дробной части? Может оно каким-то чудом и работает правильно, но нужно убедительный тест провести.
Ну если найдете баги (кроме значений типа 1кккк+) буду благодарен за подсказки.
Ну если найдете баги (кроме значений типа 1кккк+) буду благодарен за подсказки.
И искать не буду, потому-что использовать не собираюсь. Просто интересно, откуда у вас такая уверенность, что все будет правильно?
И искать не буду, потому-что использовать не собираюсь. Просто интересно, откуда у вас такая уверенность, что все будет правильно?
Я проверил на рандомных котировках и произвольных цифрах типа 0.7,0.07, 50000000.9991 и т.п., и кроме этого провел сравнительные тесты по скорости. Я как раз если и буду использовать эту функцию, то не в инит а гораздо чаще. А так вообще если с бубнами не плясать, то обычного Digits вполне хватает...
Нашел одно число: 9999999999.9999 - dtd2() возвращает 7, а моя 4. Но это мелочь. В общем функция хорошая, понял я ее, наконец-то.
Нашел одно число: 9999999999.9999 - dtd2() возвращает 7, а моя 4. Но это мелочь. В общем функция хорошая, понял я ее, наконец-то.
Ну я и говорил об этом, выше сам приводил пару таких чисел.