前面提到的連加問題(求1+2+⋯+n),也適合用遞迴結構來解題,而且只需對階乘問題的程式碼做極小幅度的修改即可達到目的—把第5行的「*」改為「+」即可。此外,把函數名稱factorial改為sum吧!
def sum( n ): # 函數名稱sum及參數n
if n <= 1: # 函數內部的程式碼--由此開始
return 1
else:
return n + sum(n-1) # 函數內部的程式碼--到此結束
print(sum(3)) # 呼叫函數計算 3+2+1
print(sum(10)) # 呼叫函數計算 10+9+8+...+1
print(sum(40)) # 呼叫函數計算 40+39+38+...+1
6 55 820
| ID | User | Problem | Subject | Hit | Post Date |
沒有發現任何「解題報告」 |
|||||