.NET是否带有能够表示极大整数的类,例如100阶乘?如果没有,有什么好的第三方图书馆可以做到这一点?
答案 0 :(得分:17)
.NET 4有一个BigInteger类
表示任意大的有符号整数。
BigInteger类型是一个不可变类型,表示一个任意大的整数,其理论上的值没有上限或下限。此类型与.NET Framework中的其他整数类型不同,后者的范围由其MinValue和MaxValue属性指示。
答案 1 :(得分:13)
.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
答案 2 :(得分:11)
Microsoft.FSharp.Math.Types.BigInt
它可以表示任何整数。
答案 3 :(得分:5)
答案 4 :(得分:4)
Mono已经实现了公共BigInteger:
http://www.go-mono.com/docs/index.aspx?link=T:Mono.Math.BigInteger
你可以抓住Mono.Security程序集来使用它;因为它是一个Mono类库,它也应该是MIT许可。