Friday, March 16, 2018

ரெகர்சிவ் ஃபங்க்சன் என்றால் என்ன்?


நானே கேள்வி நானே பதில்:
நாம் பொதுவாக ஒரு ஃபங்க்சனை மெயின் ஃபங்க்சனில் இருந்து அழைப்போம். ஆனால் ஒரு ஃபங்க்சனில் இருந்த படியே அதே ஃபங்க்சனை அழைத்தால் ரெகர்சிவ் ஃபங்க்சன் எனப்படுகின்றது.
கீழே உள்ள நிரல் ஒரு எண்ணை இன்புட் வாங்கி அதன் ஃபேக்டோரியல் கண்டு பிடிக்கப்பயன்படுகின்றது.
Calcfact என்கின்ற ஃபங்க்சன் அதற்கு பயன்படுத்தியுள்ளோம்.
பொதுவாக ஒரு எண்ணின் factorial என்பது (n)
n*(factorial of n-1)
என்பது இங்கு பயன்படுத்தப் பட்டுள்ளது.
#include  <stdio.h>
#include <stdlib.h>
int calcfact(int);
int main()
{
    int n,fact;
    printf("Enter a number");
    scanf("%d",&n);
    fact=calcfact(n);
    printf("factorial of %d is %d",n,fact);
   return 0;
}
int calcfact(int n1)
{
if(n1<=1)
    return 1;
else
    return n1*calcfact(n1-1);
}
மேலே உள்ள நிரலில் n என்பதன் மதிப்பாக 5 என்று கொடுத்தோம் என்றால்
அது
5*calcfact(4);
5*4*calcfact(3);
5*4*3*calcfact(2);
5*4*3*2*calcfact(1);
5*4*3*2*1
=120 என கணக்கீடு செய்கின்றது.
நன்றி
முத்து கார்த்திகேயன்,மதுரை.
ads Udanz

No comments:

Post a Comment