• 0 رای - 0 میانگین
  • 1
  • 2
  • 3
  • 4
  • 5
توضیح تابع بازگشتی
#1
سلام دوستان من تو php تازه واردم، تازه دارم یادمیگرم . این تابع یه تابع بازگشتیه که فاکتوریل عدد رو چاپ میکنه اما من درست نمیفهممش اگه میشه توضیح دقیق بدید نحوه کار تابع رو.
[عکس: srn2vwe1gxw77bnarim3.jpg]
  پاسخ
تشکر شده توسط :
#2
تابع بازگشتی:
وقتی یک تابع خودش رو فراخوانی کنه، تابع بازگشتی محسوب میشه. در ریاضیات هم زیاد استفاده میشه. مثل همین فاکتوریل یا توان.
توابع بازگشتی حتما باید یک شرط برای پایان داشته باشه وگرنه تا بینهایت جلو میره.

یه روش ساده برای درک توابع بازگشتی اینه که شما به جای سیستم خودت تابع رو حل کنی. یک جدول بکشید و در هر سطر یک فراخوانی رو قرار بدین.
مرحله اول ما از بالا به پایین میریم.
کد:
#    fac($n)
________________
1    fac(4)= 4*fac(4-1)= 4*fac(3)
2    fac(3)= 3*fac(3-1)= 3*fac(2)
3    fac(2)= 2*fac(2-1)= 2*fac(1)
4    fac(1)= 1*fac(1-1)= 1*fac(0)
5    fac(0)= 1

مرحله دوم وقتی دیگه بازگشتی نداشتیم و به جواب بدون فراخوانی تابع رسیدیم از پایین به بالا میریم و جواب ها رو جایگزین میکنیم. تا به سطر اول برسیم.
کد:
#    fac($n)
________________
1    fac(4)= 4*fac(4-1)= 4*fac(3)= 4*6= 24
2    fac(3)= 3*fac(3-1)= 3*fac(2)= 3*2= 6
3    fac(2)= 2*fac(2-1)= 2*fac(1)= 2*1= 2
4    fac(1)= 1*fac(1-1)= 1*fac(0)= 1*1= 1
5    fac(0)= 1
به یـزدان که گر ما خرد داشتیم
کجـا این سر انجـام بد داشتیم؟
  پاسخ
تشکر شده توسط : Y.P.Y mohsensaeb14 webnevesht shgninc


پرش به انجمن:


کاربران در حال بازدید این موضوع: 1 مهمان