"পুনরাবৃত্ত ফাংশন" এমন কিছু যা আবার ফাংশনের বডিতে নিজেকে কল করে।
উদাহরণস্বরূপ,
-
একটি ফাংশন ফ্যাক্ট ( ), যা একটি পূর্ণসংখ্যা 'N' এর ফ্যাক্টরিয়াল গণনা করে, যা 1 থেকে N পর্যন্ত সমস্ত পূর্ণ সংখ্যার গুণফল।
-
fact ( ) 1 (বা) 0 এর আর্গুমেন্টের সাথে, ফাংশনটি 1 প্রদান করে। অন্যথায়, এটি n*fact (n-1) প্রদান করে, যতক্ষণ না 'n' 1 এর সমান হয়।
Fact (5) =5* fact (4) =5*4*3* fact (3) =5*4*3*2* fact (2) =5*4*3*2*1 fact (1) =5*4*3*2*1 = 120.
উদাহরণ
একটি সংখ্যা −
কে বিপরীত করার জন্য রিকার্সিভ ফাংশন ব্যবহারের জন্য সি প্রোগ্রামটি নিচে দেওয়া হল#include<stdio.h>
main ( ){
int n,f;
int fact (int);
clrscr ( );
printf ("enter a number");
scanf ("%d", &n);
f= fact (n);
printf (factorial value = %d",f);
}
int fact (int n){
int f;
if ( ( n==1) || (n==0))
return 1;
else
f= n*fact (n-1);
return f;
} আউটপুট
আউটপুট নিচে দেওয়া হল -
Enter a number 5 Factorial value = 120
Recursive ফাংশন −
ব্যবহার করে একটি প্রদত্ত সংখ্যাকে বিপরীত করার জন্য আরেকটি C প্রোগ্রাম নীচে দেওয়া হল#include<stdio.h>
int sum=0,rem;
int main(){
int num,revNum;
printf("enter number:\n");
scanf("%d",&num);
revNum=revNumFunction(num);//calling function to reverse the given number
printf("the number after reverse :%d",revNum);
return 0;
}
revNumFunction(int num){
if(num){
rem=num%10;
sum=sum*10+rem;
revNum(num/10);
}
else
return sum;
} আউটপুট
আউটপুট নিম্নরূপ -
enter number: 1357 the number after reverse is :7531