相关疑难解决方法(0)

如何使用库调用计算C#中的阶乘?

我需要计算高达100左右的阶乘数!为了确定一系列硬币翻转式数据是否是随机的,根据贝叶斯概率的维基百科条目. 正如你在那里看到的那样,必要的公式涉及3个因子计算(但是,有趣的是,这些因子计算中的两个是沿着到第三个计算的方式计算的).

我在这里看到了这个问题,但我认为这个整数很快就会被吹灭.我也可以创建一个更加智能的因子计算功能(即,如果我有11!/(7!3!),根据wiki示例,我可以去(11*10*9*8)/ 3!),但这对我来说过早优化,在某种意义上我希望它能够工作,但我并不关心速度(还).

那么,为了获得这个概率,我可以调用什么样的C#库来计算阶乘?我对可以进入阶乘计算的所有可怕性感兴趣,我只想以一种我可以操纵它的方式得到结果.在Math命名空间中似乎没有因子函数,因此问题.

c# factorial

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

因子方法导致错误

我试图得到数字66的阶乘值,但我的方法导致输出0.但每当我试图得到5的阶乘,它就会产生120输出.谁能告诉我为什么?

 public static int factorial(int n)
 {
            if (n == 1)
                return n;
            return n * factorial(n - 1);
 }
Run Code Online (Sandbox Code Playgroud)

c# factorial

4
推荐指数
1
解决办法
1634
查看次数

为什么计算小数(34+)的阶乘返回0

int n = Convert.ToInt32(Console.ReadLine());
int factorial = 1;

for (int i = 1; i <= n; i++)
{
    factorial *= i;    
}
Console.WriteLine(factorial);
Run Code Online (Sandbox Code Playgroud)

此代码在控制台应用程序中运行,但当数字大于34时,应用程序返回0.

为什么返回0以及如何计算大数的阶乘?

c# console-application

-2
推荐指数
1
解决办法
1589
查看次数

标签 统计

c# ×3

factorial ×2

console-application ×1