diff --git a/docs/hi/recursion/README.md b/docs/hi/recursion/README.md new file mode 100644 index 000000000..c762b81d2 --- /dev/null +++ b/docs/hi/recursion/README.md @@ -0,0 +1,61 @@ +रिकर्सन क्या है? + +1. रिकर्सन क्या है? + - रिकर्सन एक प्रोग्रामिंग तकनीक है जिसमें एक फ़ंक्शन अपने आप को कॉल करता है। यह एक शक्तिशाली तकनीक है जिसका उपयोग जटिल समस्याओं को हल करने के लिए किया जा सकता है। + +2. रिकर्सन का उपयोग करके दो संख्याओं का योग कैसे करें? + - रिकर्सन का उपयोग करके दो संख्याओं का योग करने के लिए, हम निम्नलिखित चरणों का पालन कर सकते हैं: + - एक फ़ंक्शन बनाएं जिसका नाम "Sum" हो और जो दो संख्याओं को स्वीकार करे। + - एक बेस केस बनाएं। बेस केस वह स्थिति है जब समस्या हल हो जाती है। इस मामले में, बेस केस तब होता है जब एक या दोनों संख्याएं शून्य होती हैं। + - एक रिकॉर्सिव केस बनाएं। रिकॉर्सिव केस वह स्थिति है जब समस्या को हल करने के लिए हम फ़ंक्शन को स्वयं कॉल करते हैं। इस मामले में, रिकॉर्सिव केस तब होता है जब दोनों संख्याएं शून्य नहीं होती हैं। +3. उदाहरण + - यहां एक उदाहरण है कि कैसे हम रिकर्सन का उपयोग करके दो संख्याओं का योग कर सकते हैं: + +```cpp + +#include +using namespace std; + +// सम फ़ंक्शन का विवरण +int Sum(int a, int b) +{ + // अगर 'a' शून्य है, तो 'b' को वापस लौटाएं + if (a == 0) + return b; + // अगर 'b' शून्य है, तो 'a' को वापस लौटाएं + else if (b == 0) + return a; + + // अन्यथा, a और b के योग को वापस लौटाएं + else + return a + b; +} + +int main() +{ + // नंबर्स इनिटियलाइज करें + int x, y, Result; + + // उपयोगकर्ता से इनपुट लें + cout << "\n2 नंबर्स दर्ज करें:"; + cin >> x >> y; + + // सम को कॉल करें और परिणाम प्रिंट करें + Result = Sum(x, y); + cout << "\nयोग = " << Result; + + return 0; +} + +``` +4. कैसे काम करता है? + - जब हम `Sum(x, y)` को कॉल करते हैं, तो फ़ंक्शन `a == 0` और `b == 0` के लिए जाँच करता है। यदि `a == 0`, तो फ़ंक्शन `b` को वापस लौटाता है। यदि `b == 0`, तो फ़ंक्शन `a` को वापस लौटाता है। अन्यथा, फ़ंक्शन `a + b` को वापस लौटाता है। + +5. उदाहरण + - उदाहरण के लिए, मान लीजिए कि `x = 2` और `y = 3`। जब हम `Sum(x, y)` को कॉल करते हैं, तो फ़ंक्शन `a == 0` और `b == 0` के लिए जाँच करता है। दोनों संख्याएँ शून्य नहीं हैं, इसलिए फ़ंक्शन `a + b` को वापस लौटाता है, जो `2 + 3 = 5` है। + +6. शुरुआत से कैसे करें? + - यदि आप एक शुरुआती हैं, तो रिकर्सन से शुरू करना मुश्किल हो सकता है। यहां कुछ सुझाव दिए गए हैं कि आप कैसे शुरू कर सकते हैं: + - सबसे पहले, रिकर्सन के सिद्धांतों को समझें। आप ऑनलाइन या पुस्तकों में कई संसाधन पा सकते हैं। + - एक बार जब आप सिद्धांतों को समझ लेते हैं, तो छोटे से शुरू करें। एक फ़ंक्शन बनाएं जो एक बेस केस और एक रिकॉर्सिव केस के साथ एक सरल समस्या को हल करे। + - एक बार जब आप एक सरल समस्या को हल कर लेते हैं, तो धीरे-धीरे अधिक जटिल समस्याओं पर काम करें। diff --git a/docs/hi/recursion/recursion.cpp b/docs/hi/recursion/recursion.cpp new file mode 100644 index 000000000..e94d4e313 --- /dev/null +++ b/docs/hi/recursion/recursion.cpp @@ -0,0 +1,33 @@ +#include +using namespace std; + +// सम फ़ंक्शन का विवरण +int Sum(int a, int b) +{ + // अगर 'a' शून्य है, तो 'b' को वापस लौटाएं + if (a == 0) + return b; + // अगर 'b' शून्य है, तो 'a' को वापस लौटाएं + else if (b == 0) + return a; + + // अन्यथा, a और b के योग को वापस लौटाएं + else + return a + b; +} + +int main() +{ + // नंबर्स इनिटियलाइज करें + int x, y, Result; + + // उपयोगकर्ता से इनपुट लें + cout << "\n2 नंबर्स दर्ज करें:"; + cin >> x >> y; + + // सम को कॉल करें और परिणाम प्रिंट करें + Result = Sum(x, y); + cout << "\nयोग = " << Result; + + return 0; +}