計算階層
普通方法:
-使用循環
#!/usr/bin/python
def factorial(n):
sum = 1
for i in range(1,n+1):
sum *= i
return sum
print factorial(5)
計算階層
python 7.py
120
#!/usr/bin/python
def factorial(n):
sum = 0
for i in range(1,n+1):
sum += i
return sum
print factorial(100)
100 求和
python 7.py
5050
遞歸的注意事項
必須有最後的默認結果
if n == 0
遞歸參數必須向默認結果收斂的:
factorial(n-1)
#!/usr/bin/python
def factorial(n):
if n == 0:
return 1
else:
return n * factorial(n-1)
print factorial(5)
遞歸方式計算階層
#!/usr/bin/python
def factorial(n):
if n == 0:
return 0
else:
return n + factorial(n-1)
print factorial(100)
遞歸方式相加