C#高精度计算

标签 c# .net sqrt

考虑这段代码:

double result = Math.Sqrt(4746073226998689451);

对于结果,我得到的是 2178548422 而不是 2178548421.999999854etc... 我怎样才能得到更精确的结果?

最佳答案

维基百科上提到了一堆适用于 .NET 的高精度数学库 - Arbitrary-percision artithmatic页面。

我以前在这里看到过 BigNum 推荐,尽管维基百科链接已损坏,目前我在其他地方找不到该库。

页面上的另一个选项是 C# binding for MPIR .

关于C#高精度计算,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8113651/

相关文章:

c# - ASP.net MVC 应用程序中出现“指定的转换无效”错误。在本地工作,发布后一段时间,但随后抛出错误

c# - 从代码隐藏页面调用 Javascript 函数

c# - 在新的应用程序域中运行时,如何将 stdout 转换为 mstest 输出?

python - 如何修复Python中的 'ValueError: math domain error'?

c# - 使用sendkey函数在C#中将键盘键发送到浏览器

.net - 具有 LIKE 和 IN 条件的参数化查询

.net - 图形 GDI+ 上的多线程

c++ - 在模板类中使用 sqrt() 函数时消除歧义

c - 当我使用 `sqrt()` 而不是 `float` 时,为什么 `double` 会打印所需的输出?

c# - HttpWebRequest 未返回,连接关闭