Re: [問題] 請教一個題目的遞迴解法
※ 引述《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
02/11 14:29, 2F
→
02/11 18:31, , 3F
02/11 18:31, 3F
討論串 (同標題文章)
C_and_CPP 近期熱門文章
PTT數位生活區 即時熱門文章