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

C++ में शक्तिशाली पूर्णांक

मान लीजिए कि हमारे पास तीन पूर्णांक 'ए' और 'बी' और 'सीमा' हैं। कार्य [ए, सीमा] श्रेणी में संख्याओं को मुद्रित करना है। इन संख्याओं की सूची को शक्तिशाली पूर्णांक कहा जाता है और इसे इस रूप में दर्शाया जाता है,

a^i + b^j जैसे कि i>=0 और j>=0

उदाहरण के लिए

इनपुट-1:

a = 2

b = 5

limit = 10

आउटपुट:

[2, 3, 4, 5, 6, 7, 9]

स्पष्टीकरण: प्रत्येक i और j के लिए,

2^0 + 5^0 =2 , 2^0 + 5^1=6

2^1 + 5^0 =3 , 2^1 + 5^1=7

2^2 + 5^0 =5 , 2^3 + 5^0=9

इस समस्या को हल करने का तरीका

इस विशेष समस्या को हल करने के लिए पाशविक बल दृष्टिकोण यह है कि हम दो नेस्टेड लूप लेंगे और सीमा तक पुनरावृति करेंगे। फिर हम ऊपरी सीमा में प्रत्येक घातांक के लिए दो संख्याओं का योग पाएंगे और परिणामी संख्या को सूची में सम्मिलित करेंगे।

  • तीन नंबर 'ए', 'बी' और 'लिमिट' लें।
  • एक फंक्शन पावरफुलनंबर्स (इंट ए, इंट बी, इंट लिमिट) इनपुट के रूप में 'ए', 'बी' और 'लिमिट' नंबर लेता है। फ़ंक्शन सभी शक्तिशाली संख्याओं की सूची देता है जैसे कि a^i + b^j जहां i>=0 और j>=0.
  • सीमा तक दो नेस्टेड लूप लें और हर बार, इसकी अनुक्रमणिका से गुणा करके शक्तिशाली संख्याएं पाएं।
  • यदि संख्या [ए, सीमा] की सीमा के बीच है, तो संख्या को एक सेट में रखें (संख्याओं के डुप्लिकेट से बचने के लिए)।
  • सेट पर पुनरावृति करें और आउटपुट प्रिंट करें।

उदाहरण

#include <bits/stdc++.h>
using namespace std;
void powerfulNum(int a, int b, int limit) {
   set < int > s;
   for (int i = 1; i < limit; i *= a) {
      for (int j = 1; j < limit; j *= b) {
         if (i + j <= limit) {
            s.insert(i + j);
         } else break;
         if (b == 1) break;
      }
      if (a == 1) break;
   }
   for (auto it: s) {
      cout << it << " ";
   }
}
int main() {
   int a = 2;
   int b = 5;
   int limit = 10;
   powerfulNum(a, b, limit);
   return 0;
}

उपरोक्त कोड को चलाने से आउटपुट इस प्रकार उत्पन्न होगा,

आउटपुट

2 3 5 6 7 9

यहाँ, 2 से 10 तक की सभी शक्तिशाली संख्याएँ [2, 3, 4, 6, 7, 9] हैं।


  1. सी ++ में स्ट्रिंग से सभी पूर्णांक निकालें

    यहां हम देखेंगे कि C++ में स्ट्रिंग्स से सभी पूर्णांकों को कैसे निकाला जाए। हम एक स्ट्रिंग लगा सकते हैं जहां संख्याएं और संख्याएं मौजूद नहीं हैं। हम इसमें से सभी संख्यात्मक मान निकालेंगे। इस समस्या को हल करने के लिए, हम C++ में stringstream क्लास का उपयोग करेंगे। हम स्ट्रिंग शब्द को शब्द से काटेंगे

  1. C++ में संख्या स्ट्रिंग को पूर्णांकों में बदलें

    यहां हम देखेंगे कि किसी संख्या स्ट्रिंग को पूर्णांक प्रकार डेटा में कैसे परिवर्तित किया जाए। हम atoi () फ़ंक्शन का उपयोग करके इस समस्या को हल कर सकते हैं। यह फ़ंक्शन स्ट्रिंग को इनपुट के रूप में लेता है और पूर्णांक डेटा में परिवर्तित करता है। atoi() फ़ंक्शन लाइब्रेरी में मौजूद है। Input: A number

  1. पायथन में शक्तिशाली पूर्णांक

    =0 के लिए। हमें सभी की एक सूची ढूंढनी है -शक्तिशाली पूर्णांक जिनका मान बाउंड से कम या बराबर होता है। इसलिए, यदि इनपुट x =2 और y =3 जैसा है और बाउंड 10 है, तो आउटपुट [2,3,4,5,7,9,10] होगा, जैसा कि 2 =2^0 + 3^ 0 3 =2^1 + 3^0 4 =2^0 + 3^1 5 =2^1 + 3^1 7 =2^2 + 3^1 9 =2^3 + 3^0 10 =2^ 0 + 3^2 इसे हल क