作者sonicc (止水)
看板Prob_Solve
標題Re: [問題] 可以麻煩教教我這兩題解法嗎?!
時間Wed Jun 17 13:41:42 2009
我想得頭好痛喔
我能提供題目跟答案
麻煩各位 m(_ _)m
Q1:
long test ( int n)
{
if ( n = =1 || n = = 0) return 1;
else return ( test ( n-1) + test ( n-2));
}
請問執行test ( 6 ) 結果?
test(6)=test(5)+test(4)=
[test(4)+test(3)
]+
[test(3)+test(2)
]
=
[[test(3)+test(2)]+[test(2)+1]
]+
[[test(2)+1]+1+1
]
=
[[test(2)+1+1+1]+[1+1+1]
]+5
=5+3+5=13
Ans:13
Q2:
int m1,m2=11,m3=1;
for ( m1=0 ; m1<=m2 ; m1++ )
{
m3=m1+m3 ;
m1=m1+2;
}
執行後m3=?
Ans:19
m1=0
m3=0+1=1;
m1=m1+2=2;
m1++ =>m1=3;
所以 m3=0+1 => 3+1 => 6+4 => 9+10 = 19
※ 編輯: sonicc 來自: 59.124.246.167 (06/17 13:51)
1F:→ meow23:非常謝謝你 我懂了 ^^ 06/17 14:22
2F:推 meow23:不好意思 請問 m3=0+1 => 3+1 => 6+4 => 9+10 = 19 06/17 17:06
3F:→ meow23:6+4那裡不懂耶 不是該5+4嗎?! 06/17 17:08
4F:→ sonicc:因為你的m3已經變成4了 所以在第二次迴圈就是6+4 06/17 18:04
5F:→ sonicc:看錯地方 = = m1+2之後因為迴圈已經結束一次m1要再加1 06/17 18:05