नीचे दिए गए उदाहरण में रिकर्सिव फंक्शन checkFact() का उपयोग करके किसी संख्या का फैक्टोरियल ज्ञात किया जा रहा है:
यदि मान 1 है, तो यह 1 लौटाता है क्योंकि फैक्टोरियल 1 है:
if (n == 1) return 1;
यदि नहीं, तो रिकर्सिव फंक्शन निम्न इटरेशन्स के लिए कॉल किया जाएगा यदि आप 5! का मान चाहते हैं:
Iteration1: 5 * checkFact (5 - 1); Iteration2: 4 * checkFact (4 - 1); Iteration3: 3 * checkFact (3 - 1); Iteration4: 4 * checkFact (2 - 1);
रिकर्सन का उपयोग करके फैक्टोरियल की गणना करने के लिए, आप निम्न कोड चला सकते हैं जो दिखाता है कि ऊपर क्या किया गया है:
उदाहरण
using System; namespace Demo { class Factorial { public int checkFact(int n) { if (n == 1) return 1; else return n * checkFact(n - 1); } static void Main(string[] args) { int value = 9; int ret; Factorial fact = new Factorial(); ret = fact.checkFact(value); Console.WriteLine("Value is : {0}", ret ); Console.ReadLine(); } } }आउटपुट
Value is : 362880