Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> C#

C# में रिकर्सन का उपयोग करके अंकों का योग निकालना

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

एल्गोरिदम

  1. यदि संख्या 0 नहीं है, तो अंतिम अंक (संख्या % 10) लें और इसे शेष संख्या (संख्या / 10) के अंकों के योग में जोड़ें।
  2. यदि संख्या 0 है, तो 0 लौटाएं (बेस केस)।

रिकर्सिव फंक्शन

public int addFunc(int val) {
    if (val != 0) {
        return (val % 10 + addFunc(val / 10));
    } else {
        return 0;
    }
}

पूर्ण उदाहरण

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace Demo {
    class MyApplication {
        static void Main(string[] args) {
            int val, result;
            Calc cal = new Calc();
            val = 789;
            Console.WriteLine("Number: {0}", val);
            result = cal.addFunc(val);
            Console.WriteLine("Sum of Digits in {0} = {1}", val, result);
            Console.ReadLine();
        }
    }

    class Calc {
        public int addFunc(int val) {
            if (val != 0) {
                return (val % 10 + addFunc(val / 10));
            } else {
                return 0;
            }
        }
    }
}

आउटपुट

Number: 789
Sum of Digits in 789 = 24

चरण-दर-चरण निष्पादन (789 के लिए)

  1. addFunc(789) → 9 + addFunc(78)
  2. addFunc(78) → 8 + addFunc(7)
  3. addFunc(7) → 7 + addFunc(0)
  4. addFunc(0) → 0 (बेस केस)
  5. वापसी: 7 + 8 + 9 = 24

मुख्य बिंदु

  • रिकर्सन में बेस केस अनिवार्य है ताकि अनंत लूप न हो।
  • स्टैक ओवरफ्लो से बचने के लिए बड़ी संख्याओं के लिए इटरेटिव दृष्टिकोण बेहतर हो सकता है।
  • यही तर्क किसी भी बेस (बाइनरी, ऑक्टल, हेक्साडेसिमल) के लिए काम करता है।
  1. - रिकर्सन का उपयोग करके नेस्टेड लिस्ट का कुल योग खोजने के लिए Python प्रोग्राम

    जब रिकर्सन तकनीक का उपयोग करके नेस्टेड लिस्ट का कुल योग खोजने की आवश्यकता होती है, तो एक यूज़र-डिफाइंड मेथड का उपयोग किया जाता है, जो लिस्ट को पैरामीटर के रूप में लेता है।रिकर्सन बड़ी समस्या के छोटे-छोटे टुकड़ों का आउटपुट कंप्यूट करता है, और इन टुकड़ों को बड़ी समस्या का समाधान देने के लिए जोड़ता है।

  1. - रिकर्सन के बिना संख्या में अंकों का योग खोजने के लिए Python प्रोग्राम

    जब रिकर्सन की विधि का उपयोग किए बिना संख्या में अंकों का योग खोजने की आवश्यकता होती है, तो % ऑपरेटर, + ऑपरेटर और // ऑपरेटर का उपयोग किया जा सकता है।इसके लिए एक प्रदर्शन नीचे दिया गया है:उदाहरणdef sum_of_digits(my_num): sum_val = 0 while my_num != 0: sum_val = sum_val + (my_num % 10)

  1. - पायथन में दी गई संख्या के सभी अंकों का योग खोजने का प्रोग्राम

    मान लीजिए हमारे पास एक संख्या num है, हमें इसके अंकों का योग ढूंढना है। हमें इसे स्ट्रिंग्स का उपयोग किए बिना हल करना है। उदाहरण के लिए, यदि इनपुट है num = 512, तो आउटपुट होगा 8, क्योंकि 8 = 5 + 1 + 2। हल करने के चरण sum := 0 जब तक num != 0: sum := sum + (num % 10) num := num // 10 sum लौटाएं।