Как я могу представить очень большое целое число в .NET? - PullRequest
26 голосов
/ 25 августа 2008

. Поставляется ли в .NET класс, способный представлять чрезвычайно большие целые числа, например, 100 факториалов? Если нет, то какие хорошие сторонние библиотеки могут это сделать?

Ответы [ 5 ]

17 голосов
/ 09 сентября 2008

.NET 4 имеет BigInteger класс

Представляет произвольно большое целое число со знаком.

Тип BigInteger - это неизменный тип, представляющий произвольно большое целое число, значение которого в теории не имеет верхних или нижних границ. Этот тип отличается от других целочисленных типов в .NET Framework, диапазон которых указан их свойствами MinValue и MaxValue.

13 голосов
/ 25 августа 2008

.NET имеет класс BigInteger, но, к сожалению, он внутренний. Однако в нескольких местах есть свои. Вы можете получить реализацию из IronPython, либо из CodeProject, либо из Visual J #. Я должен сказать, что сам не пробовал, поэтому не знаю, какой из них лучший.

http://www.codeplex.com/IronPython http://www.codeproject.com/KB/cs/biginteger.aspx http://msdn.microsoft.com/en-us/magazine/cc163696.aspx

11 голосов
/ 26 августа 2008

Microsoft.FSharp.Math.Types.BigInt

Может представлять любое целое число.

5 голосов
/ 21 октября 2009

Вот ссылка на документацию большого целого числа в фреймворке 4.0

http://msdn.microsoft.com/en-us/library/system.numerics.biginteger(VS.100).aspx

4 голосов
/ 19 сентября 2008

Mono уже имеет публичную реализацию BigInteger:

http://www.go -mono.com / Docs / index.aspx ссылка = T: Mono.Math.BigInteger

Вы можете просто взять сборку Mono.Security, чтобы использовать ее; поскольку это библиотека классов Mono, она также должна иметь лицензию MIT.

...