Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> सी प्रोग्रामिंग

प्रोग्राम के साथ सी लैंग्वेज में रिकर्सिव फंक्शन समझाएं

पुनरावर्ती कार्य अपने आप में किसी चीज को परिभाषित करने की प्रक्रिया है। यह एक ऐसा फंक्शन है जो फंक्शन के मुख्य भाग में खुद को फिर से कॉल करता है।

एक फ़ंक्शन तथ्य ( ), जो एक पूर्णांक 'N' के फ़ैक्टोरियल की गणना करता है, जो 1 से N तक की सभी पूर्ण संख्याओं का गुणनफल है।

जब तथ्य ( ) को 1 (या) 0 के तर्क के साथ बुलाया जाता है, तो फ़ंक्शन 1 लौटाता है। अन्यथा, यह n*तथ्य (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>
int main ( ){
   int n,f;
   int fact (int);
   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

  1. संरचना अवधारणा का उपयोग करके सी भाषा में बिट फ़ील्ड की व्याख्या करें

    बिट फ़ील्ड का उपयोग बिट्स के संदर्भ में चर के आकार को निर्दिष्ट करने के लिए किया जाता है। आम तौर पर, इसे एक संरचना के अंदर परिभाषित किया जाता है। बिट फ़ील्ड:1 बाइट=8 बिट उदाहरण के लिए, एक उदाहरण नीचे समझाया गया है - Struct info{    int x:2; }; यहाँ, x 2बिट्स पर कब्जा कर रहा है। किसी

  1. C भाषा में लूप कंट्रोल स्टेटमेंट क्या हैं? फ्लो चार्ट और प्रोग्राम के साथ समझाएं

    लूप कंट्रोल स्टेटमेंट का उपयोग स्टेटमेंट के सेट को दोहराने के लिए किया जाता है। वे इस प्रकार हैं - लूप के लिए लूप के दौरान डू-जबकि लूप लूप के लिए वाक्य रचना इस प्रकार है - for (initialization ; condition ; increment / decrement){    body of the loop } फ्लो चार्ट लूप के लिए फ्लो चार्ट इ

  1. C भाषा में यूनियन टू पॉइंटर को समझाएं

    एक यूनियन को मेमोरी लोकेशन कहा जाता है, जिसे विभिन्न प्रकार के डेटा के कई वेरिएबल द्वारा साझा किया जाता है। सिंटैक्स वाक्य रचना इस प्रकार है - union uniontag{    datatype member 1;    datatype member 2;    ----    ----    datatype member n; }; उदाह