Предыдущая тема :: Следующая тема |
Автор |
Сообщение |
Михал Гость
|
Добавлено: Сб Дек 13 2003 15:02 Заголовок сообщения: Visual C (DevStudio) |
|
|
Здравствуйте. Я использовал тип long double для того чтобы получить максимальную точность. Но этого оказалось недостаточно. Существует ли еще более точный в вычислениях тип Спасибо. |
|
Вернуться к началу |
|
|
Demiurg83
Зарегистрирован: 16.01.2004 Сообщения: 6 Откуда: Липецк
|
Добавлено: Пт Янв 16 2004 04:50 Заголовок сообщения: |
|
|
Проблемы именно с точностью, или с переполнением? Вычисления с плавающей точкой или целочисленные? Бытует заблуждение, что в целочисленных вычислениях тип double превосходит все целочисленные типы: мол, у него диапазон больше. Если целочисленные - тут уже есть ветка, посвященная твоей проблеме.
Опиши задачу, данных маловато. Одно могу сказать наверняка: если точности стандартных типов данных не хватает, надо рассмотреть конкретную вычислитеную проблему, безо всяких абстракций и общих подходов. Там видно будет. |
|
Вернуться к началу |
|
|
grayrat
Зарегистрирован: 30.06.2003 Сообщения: 189
|
Добавлено: Пт Янв 16 2004 10:02 Заголовок сообщения: |
|
|
Однажды (были проблемы с переполнением) я с удивлением обнаружил что в Visual C sizeof(long double) == sizeof(double) == 8.
Решил эту проблему путём смены компилятора на Борланд. Если же точности (разрядности) которую даёт long double хватило-бы и необходимо использовать visual, то советую написать соответствующие ассемблерные процедурки. Если же нужна существенно большая точность, то в юниксах существует библиотека для работы с числами произвольной точности, как целыми так и вещественными - gmp. При желании её можно собрать под visual. |
|
Вернуться к началу |
|
|
|