Re: [問題] 請教一個題目的遞迴解法

看板C_and_CPP (C/C++)作者 (狗腿)時間16年前 (2009/02/11 03:05), 編輯推噓1(102)
留言3則, 3人參與, 最新討論串2/4 (看更多)
※ 引述《cowbbb (阿梁)》之銘言: : 題目是 1+(1+2)+(1+2+3)+....+(1+2+3+...10) : 迴圈解法如下: : for(i=1;i<=10;i++) : for(j=1;j<=i;j++) : sum+=j; : 但是請問遞迴解法該如何下手呢? : 畢竟 a1=1 : a2=1+(1+2) 差1+2 : a3=1+(1+2)+(1+2+3) 差1+2+3 : 若是函式內有迴圈也可稱為遞迴嗎 例如 : calling recur(10); : recur(int i) : { : int sum; : if(i= =1) : return 1; : else : { : sum=0; : for(j=1;j<=i;j++) : sum+=j; : return sum+(i-1); : } : 請問這樣的解法也稱為遞迴嗎? int recur(int i) { if( i = = 1 ) return 1; else return recur(i-1) + sum(i); } int sum(int i) { if( i = = 1 ) return 1; else return i + sum(i-1); } 沒有迴圈 = =||| -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.135.42.249

02/11 14:22, , 1F
奇怪.. 為什麼連續兩篇都把 == 寫成 = =? 看起來好怪
02/11 14:22, 1F

02/11 14:29, , 2F
= = compile 不會過吧?
02/11 14:29, 2F

02/11 18:31, , 3F
只是單純在BBS上看不出來 == 是兩個 =
02/11 18:31, 3F
文章代碼(AID): #19aT0Je0 (C_and_CPP)
文章代碼(AID): #19aT0Je0 (C_and_CPP)