Recursive Function
ஒரு function-னில் இருந்து மற்ற்றொரு function-ஐ call செய்வது வழக்கமான முறை. ஆனால் Recursive Function சற்று வித்தியாசமானவை ஒரு function-னில் இருந்து அதே function-ஐ திரும்ப call செய்துகொண்டால் அவை recursive function என்று அழைக்கபடுகிறது.
Syntax
int rec_function(argument){
executable statements;
.....
.....
// recursive function call
rec_function(argument);
}
ஒரே மாதிரி இருக்ககூடிய sub-problems-ன் சிக்கலை எளிமையாக்க இது பயன்படுத்தபடுகிறது. example ஒரு menu-வில் பல sub-menu இருக்கலாம் அதே போல் ஒவொரு sub-menu-விழும் இன்னும் பல sub-menu க்கள் இருக்கலாம் இது போன்று தொடர்ந்து கொண்டே இருக்குக் சிக்கலுக்கு எளிமையாக தீர்வு கானவே இது பயன்படுத்தபடுகிறது.
Example
Qn: Find the factorial of a given number
#include<stdio.h>
#include<conio.h>
int factorial(int);
int main(){
int p=5,result;
result=factorial(p);
printf("Factorial value is", result);
return 0;
}
int factorial(int n){
if(n==0){
return 1;
}else {
return (n* factorial(n-1));// recursive function call
}
}
Explanation
கீழ் கண்டவாறு recursive function வேலை செய்கின்றது.fact(5); // function call
5*fact(4) //recursive call
5*4*fact(3)
5*4*3*fact(2)
5*4*3*2*fact(1)
5*4*3*2*1*fact(0)
5*4*3*2*1*1 //recursive call stops here
Output:
Factorial value is 120
இது பற்றிய தங்களின் கருத்துகளை இங்கே பதிவிடுங்கள் . இது பயனுள்ளதாக விரும்பினால் மற்றவர்களுக்கும் இதை share செய்யுங்கள்.
Comments