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

C++ में जांचें कि संख्या दिए गए अंकों में किसी आधार में प्रदर्शित हो सकती है या नहीं


समस्या विवरण

संख्या n और अंकों की संख्या d दी गई है। जांचें कि क्या n को आधार 2 से 32 में से किसी में d अंकों में प्रदर्शित किया जा सकता है।

उदाहरण: n=8, d=4 → बाइनरी में 1000 (4 अंक) → YES

एल्गोरिदम

  1. आधार 2 से 32 तक जांचें
  2. यदि n < आधार और d==1 → true
  3. यदि n ≥ आधार और d>1 → पुनरावर्ती रूप से n/आधार और d-1 के साथ जांचें

उदाहरण कोड

#include <iostream>
using namespace std;

bool isRepresentedInDDigits(int num, int d, int base) {
    if (d == 1 && num < base) return true;
    if (d > 1 && num >= base)
        return isRepresentedInDDigits(num / base, --d, base);
    return false;
}

bool checkNumber(int num, int d) {
    for (int base = 2; base <= 32; base++)
        if (isRepresentedInDDigits(num, d, base))
            return true;
    return false;
}

int main() {
    int num = 8, dig = 2;
    if (checkNumber(num, dig))
        cout << "Can be represented";
    else
        cout << "Cannot be represented";
    return 0;
}

आउटपुट

Can be represented
  1. C++ में जांचें कि क्या संख्या को दो त्रिकोणीय संख्याओं के योग के रूप में दर्शाया जा सकता है C++ में जांचें कि क्या संख्या को दो त्रिकोणीय संख्याओं के योग के रूप में दर्शाया जा सकता है

    इस खंड में, हम देखेंगे कि क्या हम एक संख्या को दो त्रिकोणीय संख्याओं के योग के रूप में व्यक्त कर सकते हैं या नहीं। त्रिकोणीय संख्याएं नीचे की तरह होती हैं - उदाहरण से, हम देख सकते हैं कि 1, 3, 6, 10 कुछ त्रिकोणीय संख्याएं हैं। हमें संख्या N (मान लीजिए 16) को दो त्रिकोणीय संख्याओं (6, 10) के योग के

  1. - C++ में जांचें कि क्या संख्या को 2^x + 2^y के रूप में व्यक्त किया जा सकता है

    0। मान लीजिए संख्या 10 है, इसे 2³ + 2¹ के रूप में दर्शाया जा सकता है। 0। दूसरा मामला यह है कि यदि N विषम है, तो इसे कभी भी 2 की घातों के योग के रूप में दर्शाया नहीं जा सकता। हम घात के रूप में 0 का उपयोग नहीं कर सकते, इसलिए हमें विषम संख्याएं नहीं मिल सकतीं। सभी विषम संख्याओं के लिए इसके बाइनरी प्

  1. - C++ प्रोग्राम दी गई संख्या के अंकों का योग करने के लिए

    C++ भाषा में अंकों का योग गणना करने का एक उदाहरण निम्नलिखिक है, उदाहरण #include<iostream> using namespace std; int main() {    int x, s = 0;    cout << "संख्या दर्ज करें: ";    cin >> x;    while (x != 0) {       s =