我正在恢复这个问题,并使其更具体:是否有支持任意精度数字的.NET框架库?
答案 0 :(得分:6)
你能等待.NET 4.0吗?他们是bringing BigInteger directly into the Framework。
另一方面,如果你不能等,那么J# runtime includes built-in support for java.math.BigInteger and BigDecimal。这可以像.NET Framework的其余部分一样重新发布。
答案 1 :(得分:5)
这里有一些选择。
一个很好的选择是W3b.Sine,它是本机C#/ .NET,并且支持任意精度浮点值。
如果您只处理整数值,IntX提供对任意精度整数值的支持。可能更成熟的选项是C# BigInt,但同样,这将不支持浮点运算。
答案 2 :(得分:3)
您可以尝试旧的尾数法。基本上你可以有一个64位整数来存储数字,然后是64位整数来存储指数(可能是负数)。您可以构建自己的对象类型并重载算术运算符,因此它将被视为单个数字。这需要一些工作,但我认为这将是你最好的选择。
答案 3 :(得分:3)
GnuMpDotNet:http://www.emilstefanov.net/Projects/GnuMpDotNet/
如果您需要纯.NET,请考虑查看:http://www.codeplex.com/IntX/
答案 4 :(得分:2)
也许令人惊讶的是,Bailey-Borwein-Plouffe formula给出了计算pi的下一个二进制或十六进制数字的增量过程,而无需存储所有先前的数字。
答案 5 :(得分:2)
如果你想要一个非常快的库,那么试试:
答案 6 :(得分:1)
您可以使用十进制类型,它为您提供28-29位有效数字
答案 7 :(得分:1)
检查此链接http://jsfromhell.com/classes/bignumber
是否为javascript代码,但您可以使用任何语言或C#轻松将其转换为您自己的链接。
答案 8 :(得分:1)