Предположим, что у меня есть алгоритм, с помощью которого я могу вычислить бесконечно точное число с плавающей запятой (в зависимости от параметра N) позволяет сказать, что в псевдокоде:Расщепление число с плавающей точкой в виде суммы с плавающей точкой фиксированной точности
arbitrary_precision_float f = computeValue(n); //it could be a function which compute a specific value, like PI for instance.
Я думаю, я могу реализовать computeValue(int)
с библиотекой MPF библиотеки gnump, например ...
во всяком случае, как я могу разделить такое количество в суммах с плавающей запятой, где каждое число имеет L
цифр мантиссы?
//example
f = x1 + x2 + ... + xn;
/*
for i = 1:n
xi = 2^ei * Mi
Mi has exactly p digits.
*/
Я не знаю, ясно ли я, но я ищу что-то «простое».
Почему бы просто не разбить (двоичную) нотацию 'f' на группы цифр' p'? – Petr
из-за нормализации? – user8469759
Извините, не могли бы вы уточнить больше? – Petr