你如何在C#中使用大于MaxValue的数字进行数学(或数学)?
可能重复:
C#中的大整数
我希望能够在C#中处理任意大数。
我可以只用整数。
是否有针对此类事情的既定算法?
还是有一个很好的第三方图书馆?
如果在C#中没有好的方法,我可能会考虑更改语言。
感谢您的任何帮助/建议。
搜索是你的朋友
如何在.NET中表示一个非常大的整数?
C#中的大整数
您可能想要检查Big Num类库。 在C#中,最流行的是: IntX和W3b.Sine ,加上它们都是开源的。
有人在codeproject C#BigInteger Class中用C#做了一个BigInteger类 。 值得一试。
并且可以在以下位置找到一般算法的示例: Re:视觉工作室c#的高精度数学? (这是页面底部带有代码片段的post)
正如人们所提到的,BigInteger类有各种第三方实现。 此外,C#4.0将在CLR中获得本机BigInteger类。
如果你只需要非常大的数字,你可以使用long
(64位),甚至decimal
(128位浮点)。
如果您需要大于9223372036854775807( long
)或79228162514264337593543950335( decimal
)的值,则需要忽略此答案。