我正在尝试编写一个简单的程序来打印整数 1:10 的第一个斯特林近似值以及 1:10 阶乘的实际值。这是我的代码:
import math
nf =1
def stirling(n):
return math.sqrt(2*math.pi*n)*(n/math.e)**n
print "n","\t", "Stirling","\t\tFactorial"
for x in range (1,11):
for y in range(1,x):
nf *=y
print x,"\t", stirling(x), "\t\t", nf
我得到了错误的阶乘输出,我在哪里弄乱了代码?