Лучшая библиотека bignum для решения задач Project Euler в C ++? [закрыто]
Я все еще студент, и нахожу проект Эйлера очень веселым.
иногда вопрос требует вычислений, которые больше, чем примитивные типы. Я знаю, что вы можете реализовать это, но мне лень это делать,
Итак, я попробовал несколько библиотек,
MAPM :: очень хорошая производительность, но она обеспечивает только большие числа с плавающей точкой, с возможностью проверки, является ли она целым числом. очень хорошо принимать ввод, но неприятно предоставлять вывод, и компилируется как по волшебству с Visual C ++ 2008 express.
BIGINT :: маленький, но нуждается в реинжиниринге во многих частях. Очень простой в использовании, но очень ограниченный по мощности и очень медленный по сравнению с другими. только большие целые числа.
ttmath :: самый красивый, который я пробовал до сих пор !, только некоторые файлы, чтобы включить, и у вас есть невероятная сила / простота. Компилируется как волшебство в Visual C ++ 2008 express. Это быстро, потому что он предоставляет номера фиксированной длины. Он построен с использованием метапрограммирования в C ++. Единственный недостаток, который я вижу, состоит в том, что числа не имеют произвольной длины во время выполнения, но вы можете иметь числа 1024 КБ при написании кода очень легко,
<code>ttmath::UInt<1024 * 1024> reallyHugeUnsignedInteger; </code>
Он предоставляет три типа: подписанный, без знака и с плавающей точкой.
Я пытался скомпилировать gmp под VC2008 express, но мне не удалось! Я знаю, что это лучшее, но не так легко собрать для новичка под VC2008 Express, я также ценю, если вы укажете учебник по компиляции gmp под VC.
РЕДАКТИРОВАТЬ :: Если вы знаете, как скомпилировать gmp с помощью VC 2008, пожалуйста, объясните мне и получите награду :)
EITD :: It seems that I was not using the right terms, So here is the magical GMP for Windows! works with VC 2008 :) MPIR