PDA

View Full Version : تابع بازگشتی



dada_vahid
چهارشنبه 04 خرداد 1390, 00:17 صبح
با سلام
دوستان من توی درک تابع بازگشتی یخورده مشکل دارم یک برنامه خیلی نوشتم یک جاش رو متوجه نشدم ممنون می شم کمکم کنید




#include<iostream.h>
#include<conio.h>
int mult(int a, int b)
{
if(b==1)

return a;
else
return mult(a,b-1)+a;



}
main()
{
int a,b;
cout<<"Enter Number : ";
cin>>a;

cout<<"Enter Number : ";
cin>>b;
cout<<mult(a,b);
getch();
}



خوب تابع فرعی که خودش رو صدا میزنه return mult(a,b-1)+a; چرا a با مقادیر داخل پرانتز جمع نمیشه و کامپایلر از کجا میدونه که b مقدار تکرار کننده حقله هستش و او ن رو به حساب نمیاره

shahmohammadi
پنج شنبه 12 خرداد 1390, 21:35 عصر
با سلام.
متغیر آ با خروجی تابع جمع می شه که اون هم از نوع صحیح است.
متغیر ب تکرار رو مشخص می کنه چون فراخانی ها تازمانی که اون به یه حد مشخصی برسه ادامه داره.
موفق باشید.

dada_vahid
پنج شنبه 12 خرداد 1390, 22:57 عصر
تشکر دوست عزیز