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

एक संख्या X ज्ञात कीजिए जिसके अंकों के साथ योग C++ में N के बराबर है

इस ट्यूटोरियल में, हम एक ऐसी संख्या खोजने जा रहे हैं, जिसके अंकों सहित कुछ संख्या दी गई संख्या N के बराबर है।

विचार सरल है, हम दी गई संख्या के बाएँ और दाएँ 100 संख्याओं की जाँच करने जा रहे हैं। यह एन 1000000000 के रूप में बाध्य नहीं होगा और योग 100 से अधिक नहीं होगा।

आइए समस्या को हल करने के लिए चरणों को देखें।

  • नंबर को इनिशियलाइज़ करें।

  • ऐसा लूप लिखें जो 100 बार पुनरावृत्त हो।

    • n - i और n + i मान प्राप्त करें।

    • अंकों का योग ज्ञात कीजिए और उन्हें जोड़िए।

    • यदि उनमें से कोई भी N के बराबर है, तो उन्हें प्रिंट करें।

उदाहरण

आइए कोड देखें।

#include <bits/stdc++.h>
using namespace std;
int digitsSum(int n) {
   int sum = 0;
   while (n) {
      sum += n % 10;
      n /= 10;
   }
   return sum;
}
void findX(long int n) {
   bool is_found = false;
   for (int i = 0; i <= 100; i++) {
      long int valueOnLeft = abs(n - i) + digitsSum(abs(n - i));
      long int valueOnRight = n + i + digitsSum(n + i);
      if (valueOnLeft == n) {
         is_found = true;
         cout << abs(n - i) << " ";
      }
      if (valueOnRight == n) {
         is_found = true;
         cout << (n + i) << " ";
      }
   }
   if (!is_found) {
      cout << "No numbers found";
   }
   cout << endl;
}
int main() {
   int n = 89;
   findX(n);
   return 0;
}

आउटपुट

यदि आप उपरोक्त प्रोग्राम को निष्पादित करते हैं, तो आपको निम्न परिणाम प्राप्त होंगे।

76

निष्कर्ष

यदि ट्यूटोरियल में आपके कोई प्रश्न हैं, तो उनका टिप्पणी अनुभाग में उल्लेख करें।


  1. C++ में दिए गए अंकों से बनने वाली सबसे बड़ी संख्या ज्ञात कीजिए

    मान लीजिए कि हमारे पास अंकों की एक सरणी है। हमें वह अधिकतम संख्या ज्ञात करनी है जो सरणी के सभी अंकों का उपयोग करके प्राप्त की जा सकती है। तो अगर सरणी [3, 3, 9, 6, 2, 5] की तरह है, तो अधिकतम संख्या 965332 हो सकती है। समस्या से, हम देख सकते हैं कि हम अंकों को गैर-बढ़ते क्रम में आसानी से सॉर्ट कर सकते

  1. ऐसी संख्या x ज्ञात कीजिए कि C++ का प्रयोग करते हुए x और उसके अंकों का योग दिए गए n के बराबर हो।

    यहां हम एक समस्या देखेंगे, जहां हम एक संख्या n लेते हैं, हमें एक और मान x ज्ञात करना होता है, जैसे कि x का x + अंकों का योग दी गई संख्या n के समान हो। मान लीजिए n का मान 21 है। यह प्रोग्राम एक संख्या x =15, 15 + अंकों का योग 15, यानी 15 + 1 + 5 =21 =n के रूप में लौटाएगा। इस समस्या को हल करने के लिए

  1. ऐसी संख्या x ज्ञात कीजिए कि C++ में x और उसके अंकों का योग दिए गए n के बराबर हो

    यहां हम एक समस्या देखेंगे, जहां हम एक संख्या n लेते हैं, हमें एक और मान x ज्ञात करना होता है, जैसे कि x का x + अंकों का योग दी गई संख्या n के समान हो। मान लीजिए n का मान 21 है। यह प्रोग्राम एक संख्या x =15, 15 + अंकों का योग 15, यानी 15 + 1 + 5 =21 =n के रूप में लौटाएगा। इस समस्या को हल करने के लिए