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

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

5 ответов

Решение

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

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

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

.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

Microsoft.FSharp.Math.Types.BigInt

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

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

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

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

http://www.go-mono.com/docs/index.aspx?link=T:Mono.Math.BigInteger

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

Другие вопросы по тегам