相关疑难解决方法(0)

如何在.NET中表示一个非常大的整数?

.NET是否带有能够表示极大整数的类,例如100阶乘?如果没有,有什么好的第三方图书馆可以做到这一点?

.net bignum

26
推荐指数
4
解决办法
8486
查看次数

在c#中从double中提取尾数和指数

有没有直接的方法从c#(或一般的.NET)中获取双尾数和指数?

我发现这个使用谷歌的例子,但我不确定它会有多强大.二进制表示可以在框架的某些未来版本中进行双重更改吗?

我发现的另一个替代方法是使用System.Decimal而不是double,并使用Decimal.GetBits()方法来提取它们.

有什么建议?

.net c# floating-point

26
推荐指数
1
解决办法
2万
查看次数

C#中的任意精度小数?

是否有可用于C#的任意精度十进制类?我已经看过几个任意精度整数类,但这并不完全相同.

c# math

7
推荐指数
1
解决办法
2848
查看次数

使用倒数平方和计算PI

我需要使用以下公式以预定义的精度计算PI:

在此输入图像描述

所以我最终得到了这个解决方案.

private static double CalculatePIWithPrecision(int presicion)
{
    if (presicion == 0)
    {
        return PI_ZERO_PRECISION;
    }

    double sum = 0;

    double numberOfSumElements = Math.Pow(10, presicion + 2);

    for (double i = 1; i < numberOfSumElements; i++)
    {
        sum += 1 / (i * i);
    }

    double pi = Math.Sqrt(sum * 6);
    return pi;
}
Run Code Online (Sandbox Code Playgroud)

所以这是正确的,但我遇到了效率问题.精度值为8或更高时,它非常慢.

是否有更好(更快!)的方法来使用该公式计算PI?

c# math pi

6
推荐指数
1
解决办法
430
查看次数

标签 统计

c# ×3

.net ×2

math ×2

bignum ×1

floating-point ×1

pi ×1