|
![]() |
#1 |
Axapta
|
Не, ну правда, очень интересно, где это столько разрядов требуется?!
По теме: если очень хочется, можно: 1) Подумать, а действительно ли так уж нужны числа с таким большим кол-вом разрядов? Может можно все и с 16-ю разрядами реализовать? 2) Еще раз подумать. 3) Вынести расчет за пределы Аксапты. 4) Хранить числа с большИм количеством разрядов в двух (трех, четырех...) полях (или контейнере) и для их обработки написать свои функции, реализующие простейшие математические операторы. ![]() "Хочется" - не всегда означает, что это необходимо. Сложно поверить, что такие числа появляются на входе или на выходе алгоритма. А если это просто промежуточные значения - всегда можно чуть "подправить" алгоритм. |
|
|
За это сообщение автора поблагодарили: Alenka (1). |
![]() |
#2 |
Участник
|
4) Хранить числа с большИм количеством разрядов в двух (трех, четырех...) полях и для их обработки написать свои функции, реализующие простейшие математические операторы.
А скорость обработки какая будет? Всё равно, что воду напёрстками носить. ![]() |
|
![]() |
#3 |
Axapta
|
|
|
![]() |
#4 |
Участник
|
Для интересующихся: существует такой метод - метод Гоморри, у нас он используется для автоматического подбора нужного количества товара упаковками. Действительно, такая высокая точность нужна для промежуточных расчетов, а входные и выходные данные для данного метода практически всегда целые числа.
|
|
![]() |
#5 |
Участник
|
Цитата:
Сообщение от Alenka
![]() Для интересующихся: существует такой метод - метод Гоморри, у нас он используется для автоматического подбора нужного количества товара упаковками. Действительно, такая высокая точность нужна для промежуточных расчетов, а входные и выходные данные для данного метода практически всегда целые числа.
Тогда сразу огорчу. Для некоторого набора данных Вам и 16 цифр значащих будет мало. Там используется выделение дробных частей из разниц вещественных чисел. Попробуйте выделить дробную часть из выражения типа 1+2/27-1/14. В десятичной системе исчисления будет очень нетривиально. Точность нужна нехилая. Но ручками считается легко и непринуждённо. Так что, приношу свои извинения oip - при правильной постановке задачи его метод будет более эффективен и довольно быстр. Потому вариантов вижу несколько. Либо вывести алгоритм за пределы Аксапты, например, написав всё это на каком-то другом языке, поддерживающем высокую точность чисел в расчётах. Либо поменять алгоритм. Либо сделать свой обработчик данного алгоритма на базе целых чисел (обработчик дробей). Кстати, в интернете полно описаний разного рода алгоритмов для такой задачи. Последний раз редактировалось Михаил Андреев; 01.02.2007 в 23:23. |
|
|
За это сообщение автора поблагодарили: Alenka (1). |