斯特林公式是取n次幂近似值的数学公式。 一般来说,当n较大时,n阶幂的计算量足够大,因此斯特林公式足够容易使用。 另外,即使在n很小的时候,斯特林公式的可取值也足够准确。
公式如下。
斯特林公式的编程写法: n!=sqrt2*pi*n ) ) n/e ) ^N; pi=3.1415926=ACOS-1.0 ),e=2.718 ) )。
斯特林公式的变换: lgN!=LG2*pi ) lgN )/2n* ) lgn-lge ); //1为长度。
通常求出十进制的长度并将lg更换为log10即可。
模板代码:
# include bits/stdc.husingnamespacestd; constintpi=ACOS-1.0; int main ) { int n; wilecinn ) { double ans; ans=0.5*log )2*pi*n ) ) logn-1 ) )/log10 ); coutlonglong ) ans 1endl; }