السلام عليكم اخواني الغالين
ممكن شرح هذه الداله وهي داله fibbianci انا عارف ايه عملها وهي العدد عباره عن موجوع العددين الذي قبله
وعارف انه الداله من نوع Recursion يعني الاستدعا الذاتي
وعارف كيف يتم عمل الاستدعا الذاتي للداله وكلن هناك غموض في هذا الكود وهو طريقة عمله
وهذا الكود
- nt fib(int n)
- {
- int tmp;
- if(n < 0)
- return -1;
- if(n==0)
- return 0;
- if(n==1)
- return 1;
- return fib(n-1) + fib(n-2);// هنا الغموض ارجو توضيح هذا الغموض
- /*انا حسب فهمي حللته كما يلي
- fib(n-1) + fib(n-2)
- let n=10;
- fib(10-1)==>9 + fib(9-2)==>7 ==>9+7=16
- fib(7-1)===>6 + fib(6-2)==>5 ==>6+5=11
- fib(5-1)===>4 + fib(4-2)==>2 ==>4+2=6
- fib(2-1)===>1 + fib(1-2)==> if(n==1) return 1; =1
- انا توصلت الى هنا ولم اقدر اكمل ايه عمل الباقي ارجو التوضيح
- */
انا عارف اكون داله fibbianci باستخدام حلقات التكرار ولكن لم اتمكن من تكوينها بالاستدعا الذاتي للداله Recursion
