Описание тега boost-multiprecision

Библиотека Boost для числовых типов с произвольной точностью.
1 ответ

Как найти модульную инверсию двух очень больших чисел, используя любой из типов библиотеки Boost Multiprecision? (cpp_int, gmp_int и т. д.)

Мне нужно найти модульную мультипликативную инверсию двух чисел, типы данных которых являются любыми из тех, которые предлагаются библиотекой Multiprecision Boost (gmp_int, cpp_int и т. Д.). Есть ли встроенная функция для этого? Если нет, можете ли …
16 дек '18 в 09:31
1 ответ

Создание большого буста unordered_map с помощью cpp_int

Я пишу некоторый код на C++ для назначения класса, который требует работы с библиотекой с несколькими точностями, такими как boost. По сути, мне нужно создать хеш-таблицу с несколькими большими целыми числами, а затем найти определенное значение в э…
08 фев '18 в 09:32
2 ответа

Невозможно скомпилировать пример boost::multiprecision с компилятором Intel для Windows

Я использую VS 2017 Community Edition, Intel Compiler 17.00 обновление 6 и Boost 1.66, пытаясь узнать мой путь в boost::multiprecision::float128. Буквально взяв пример кода отсюда и поместив его в новый проект для VS. Компиляция дает несколько ошибо…
1 ответ

Почему Boost::multiprecision::sqrt(1) возвращает 0?

Boost::multiprecision::sqrt(1) возвращает 0 #include <boost/multiprecision/cpp_int.hpp> #include <boost/multiprecision/number.hpp> #include <iostream> using std::cout; using std::endl; int main() { namespace mp = boost::multiprecis…
30 окт '16 в 20:23
0 ответов

Rcpp и Boost Multiprecision,

Я хочу использовать boost / multiprecision с Rcpp. Поэтому я посмотрел вокруг и нашел эти темы о бусте: один и два. Первый из них о точности квадрата - это именно то, что я хочу использовать. Проблема в том, что я не могу скомпилировать данный приме…
27 фев '17 в 11:56
0 ответов

Преобразование Boost Multiprecision в строку с текущими настройками локали

Я работаю с классом boost cpp_dec_float, но не могу извлечь из него строку с правильными региональными настройками (десятичный символ и символ группировки). Глядя на код повышения, это выглядит как внутренняя функция str()- всегда вставляет "." симв…
27 ноя '18 в 09:54
0 ответов

Использование ускоренного мультиточного оператора вместо константного двойного

У меня есть следующий код для интеграции с помощью библиотеки Boost. Iam попытался изменить двойной оператор на оператор cpp_dec_float_50. #include <iostream> #include <boost/numeric/quadrature/adaptive.hpp> #include <boost/numeric/qu…
20 май '16 в 18:32
1 ответ

Как использовать максимальную функцию C++ с 128-битным целым числом

Если у меня есть следующий код: #include <boost/multiprecision/cpp_int.hpp> using namespace boost::multiprecision int main() { int128_t a = Func_a() int128_t b = Func_b() std::cout << std::max(a, b) << std::endl; return 0; } И если…
1 ответ

Интеграция с квадратурными библиотеками и библиотеками повышения точности в C++

После поиска я нашел удивительный код для интеграции библиотека повышения квадратуры. скорее, чем войти (х)/(1+ х) хочу интегрировать (poly[0]+poly[1]*x+poly[2]*x^2+...+poly[n]*x^n)*log(x)/(1+x), Но я не знать, как вставить вектор поли в структура f…
18 май '16 в 10:09
1 ответ

C++ BigInteger для байтового массива

В Java есть класс BigInteger для использования больших чисел, и он имеет функцию преобразователя: toByteInteger, например так: private static final BigInteger N = new BigInteger(HEX_N, 16); ... byte[] digest = messageDigest.digest(N.toByteArray()); …
23 фев '17 в 13:13
1 ответ

Как я могу преобразовать массив байтов в boost::multiprecision::uint128_t?

Если у меня есть: char buffer[16]; Как я могу преобразовать его необработанные байты в: boost::multiprecision::uint128_t? Я попытался сделать стандартный бросок в стиле C: uint128_t myInt = *(uint128_t*)buffer; хотя это, кажется, не работает должным…
23 окт '18 в 21:42
1 ответ

C++ boost/multiprecision: фатальная ошибка: mpfr.h: нет такого файла или каталога

Я следовал этому ответу и использовал Boost.Multiprecision для использования высокоточных чисел с плавающей запятой ( примеры). main.cpp #include <iostream> #include <boost/multiprecision/mpfr.hpp> // Defines the Backend type that wraps …
03 сен '17 в 02:06
1 ответ

boost::multiprecision::uint128_t sizeof равен 24

Основная математика (128 / 8 = 16) говорит по-разному. Я немного разочарован и хочу получить ответы - поскольку из того, к чему я привык, эта нотация (type_num_of_bytes_t) описывает не только объем данных, которые вы можете поместить в переменную, н…
26 янв '17 в 14:55
1 ответ

Повышение мультиточности cpp_int, умноженное на число с плавающей точкой

Можно ли умножить надстройку multiprecision int на число с плавающей запятой? Это не поддерживается? using bigint = boost::multiprecision::number<boost::multiprecision::cpp_int_backend<>>; boost::multiprecision::bigint x(12345678); auto …
22 янв '18 в 14:37
1 ответ

Как изменить точность числа во время выполнения с boost::multiprecision

Я прочитал документацию boost::multiprecision: В зависимости от типа числа точность может быть произвольно большой (ограничена только доступной памятью), фиксированной во время компиляции (например, 50 или 100 десятичных цифр) или переменной, управл…
21 ноя '15 в 22:32
0 ответов

Повышение чтения::multiprecision::cpp_int от istream

Я пытаюсь прочитать значения boost::mutiprecision cpp_int из istream и его неожиданно вызывающих исключений. Вот моя тестовая программа: #include <boost/multiprecision/cpp_int.hpp> int main() { boost::multiprecision::cpp_int v; while(std::cin …
21 июл '18 в 20:21
1 ответ

C2143/C2518 при попытке скомпилировать проект с использованием boost.multiprecision

У меня были проблемы при попытке заставить boost.multiprecision работать в моем проекте VC2017, и я попытался сделать самый простой проект возможным в качестве доказательства концепции: #include<boost/multiprecision/cpp_int.hpp> int main() { b…
0 ответов

Простые альтернативы с плавающей точкой при выполнении арифметики на рациональных кодировках с короткой строкой

Я создаю модульные тесты для функции, которая округляет "рациональные" числа, хранящиеся в виде строк. Текущая реализация округления приводит строки к типу с плавающей запятой: #include <boost/lexical_cast.hpp> #include <iomanip> #includ…
0 ответов

Перегрузка boost::multiprecision::cpp_int arguments

Когда я пытаюсь перегрузить аргумент типа boost::multiprecision::cpp_int с каким-то другим не связанным типом класса я получаю странные ошибки. Кто-нибудь знает, как это исправить или обойти это? test_program.cpp: #include <boost/multiprecision/c…
18 июн '18 в 04:26
1 ответ

boost::multiprecision: Какой самый дешевый способ умножения или деления на огромную степень 10? Что-то наподобие bitsift op для степеней 10?

Рассмотрим следующий MCVE: #include <iostream> #include <boost/multiprecision/cpp_int.hpp> int main() { boost::multiprecision::cpp_int x = 10; x *= 10000000000000000000000000000000000000000000000000000000000000; std::cout<<x<&lt…
04 янв '19 в 21:11