斯特林的公式是用于求出n的阶乘近似值的数学式。 一般来说,当n较大时,n阶幂的计算量足够大,因此斯特林公式足够容易使用。 另外,即使在n很小的时候,斯特林公式的可取值也足够准确。
公式:
或者更准确的
或者
作用: n大时计算n! 的位数
因为容易知道的整数n的位数为[lgn] 1,所以对Stirling式的两边取10的对数
为此n! 的位数是
c语言代码的实现
//底换式RES=(longlong ) ) 0.5*log )2*pi*n ) n*log(n )/log ) 10 ) ) 1; //注:在c语言中函数log10(log ) )分别以10和e为底