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

जाँच करें कि C++ में कोई संख्या धूमिल है या नहीं

यहां हम देखेंगे कि कोई संख्या ब्लेक है या नहीं। एक संख्या को धूमिल कहा जाता है यदि इसे एक सकारात्मक संख्या x के योग के रूप में नहीं दर्शाया जा सकता है और x में बिट काउंट सेट किया जा सकता है। तो x + set_bit_count(x) किसी भी गैर-ऋणात्मक संख्या x के लिए n के बराबर नहीं है।

अवधारणा बहुत सरल है, यदि सेट बिट गिनती + संख्या संख्या के समान नहीं है, तो वह धूमिल है, अन्यथा यह नहीं है।

उदाहरण

#include <iostream>
using namespace std;
int set_bit_count(int x) {
   unsigned int bit_count = 0;
   while (x != 0) {
      x &= (x - 1);
      bit_count++;
   }
   return bit_count;
}
bool isBleakNumber(int n) {
   for (int i = 1; i < n; i++)
   if (i + set_bit_count(i) == n)
      return false;
      return true;
}
int main() {
   isBleakNumber(3) ? cout << "Yes\n" : cout << "No\n";
   isBleakNumber(4) ? cout << "Yes\n" : cout << "No\n";
}

आउटपुट

No
Yes

  1. जाँच करें कि C++ में कोई बड़ी संख्या 20 से विभाज्य है या नहीं

    यहां हम देखेंगे कि किसी संख्या को 20 से विभाज्य कैसे किया जाता है या नहीं। इस मामले में संख्या बहुत बड़ी है। इसलिए हम संख्या को स्ट्रिंग के रूप में रखते हैं। एक संख्या 20 से विभाज्य होगी, जब वह 10 से विभाज्य होगी, और 10 को विभाजित करने के बाद, शेष संख्या 2 से विभाज्य होगी। तो मामला सरल है। यदि अंति

  1. C++ में N एक पंचकोणीय संख्या है या नहीं यह जांचने के लिए प्रोग्राम

    एक संख्या N के साथ दिया गया कार्य यह जाँचना है कि संख्या एक पंचकोणीय संख्या है या नहीं। एक पंचकोण बनाने के लिए व्यवस्थित की जा सकने वाली संख्याएँ एक पंचकोणीय संख्या होती हैं क्योंकि इन संख्याओं का उपयोग पंचकोण बनाने के लिए बिंदुओं के रूप में किया जा सकता है। उदाहरण के लिए, कुछ पंचकोणीय संख्याएं हैं

  1. आर्मस्ट्रांग नंबर की जांच करने के लिए C++ प्रोग्राम

    आर्मस्ट्रांग संख्या वह संख्या होती है, जहां अंकों की कुल संख्या के घात तक उठाए गए अंकों का योग संख्या के बराबर होता है। आर्मस्ट्रांग नंबरों के कुछ उदाहरण इस प्रकार हैं। 3 = 3^1 153 = 1^3 + 5^3 + 3^3 = 1 + 125 + 27 = 153 371 = 3^3 + 7^3 + 1^3 = 27 + 343 + 1 = 371 407 = 4^3 + 0^3 + 7^3 = 64 +0 + 343 =