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

C++ में N अंकों वाली उन संख्याओं की गिनती जिनमें सम संख्या में 0 हों


हमें इनपुट के रूप में एक संख्या N दी गई है। लक्ष्य उन N-अंकीय संख्याओं को ढूंढना है जिनमें सम संख्या में 0's अंक के रूप में हों। संख्या में अग्रणी शून्य भी हो सकते हैं जैसे N=3 के मामले में शामिल संख्याएँ होंगी 001, 002, 003... 010... आदि।

उदाहरण सहित समझ

इनपुट - N=4

आउटपुट - N अंकों वाली उन संख्याओं की संख्या जिनमें सम संख्या में 0's हैं: 7047

व्याख्या - सभी 4 अंकों की संख्याएँ इस तरह होंगी:

सबसे छोटी 0000 होगी, फिर 0011, 0012, 0013, 0014... उच्चतम 9900 होगी।

इनपुट - N=5

आउटपुट - N अंकों वाली उन संख्याओं की संख्या जिनमें सम संख्या में 0's हैं: 66383

व्याख्या - सभी 5 अंकों की संख्याएँ इस तरह होंगी:

सबसे छोटी 00001 होगी, फिर 00002, 00003, 00004... उच्चतम 99900 होगी।

प्रोग्राम में उपयोग किया गया दृष्टिकोण

हम पहले कुल N-अंकीय संख्याओं की गणना करेंगे जो T = 10^N - 1 हैं। फिर विषम 0's वाली सभी N-अंकीय संख्याओं की गणना करेंगे, जो O = 10^N - 8^N है। अंकों में सम 0's वाली शेष संख्याएँ T - O/2 होंगी।

  • इनपुट के रूप में एक पूर्णांक N लें।
  • फंक्शन count_even(int N) N लेता है और सम 0's वाली N-अंकीय संख्याओं की संख्या लौटाता है।
  • कुल N-अंकीय संख्याएँ total = pow(10, N) - 1 हैं।
  • अंकों में विषम 0's वाली कुल N-अंकीय संख्याएँ odd = pow(10, N) - pow(8, N) हैं।
  • अंकों में सम 0's वाली शेष संख्याएँ even = total - odd / 2 हैं।
  • सम संख्या में 0's वाली N-अंकीय संख्याओं की संख्या के रूप में even लौटाएँ।

उदाहरण

#include <bits/stdc++.h>
using namespace std;

int count_even(int N) {
    int total = pow(10, N) - 1;
    int odd = pow(10, N) - pow(8, N);
    int even = total - odd / 2;
    return even;
}

int main() {
    int N = 3;
    cout << "Count of Numbers with N digits which consists of even number of 0's are: " << count_even(N);
    return 0;
}

आउटपुट

Count of Numbers with N digits which consists of even number of 0's are: 755
  1. - C++ में अद्वितीय अंकों वाली संख्याओं की गिनती

    मान लीजिए हमारे पास एक गैर-ऋणात्मक पूर्णांक n है। हमें उन सभी संख्याओं को गिनना है जिनके अंक अद्वितीय हैं x, जहां x रेंज 0 से 10^n में है।उदाहरण के लिए, यदि संख्या n = 2 है, तो परिणाम 91 होगा, क्योंकि हम 0 से 100 तक 11, 22, 33, 44, 55, 66, 77, 88, 99 के बिना संख्याएं ढूंढना चाहते हैं।इसे हल करने के

  1. - C++ प्रोग्राम: N अंकों की संख्या ज्ञात करना जो D से विभाज्य हो

    मान लें हमारे पास दो संख्याएं N और D हैं। हमें N अंकों की संख्या ज्ञात करनी है, जो D से विभाज्य हो। यदि N 3 है, और D 5 है, तो संख्या 500 हो सकती है। इसे आसानी से हल किया जा सकता है। यदि D 10 है और N 1 है, तो यह असंभव होगा। हम D रख सकते हैं, और मान लें D में m अंक हैं, फिर N - m संख्या में 0 जोड़कर इ

  1. - पायथन में सम अंकों वाली संख्याएं ढूंढें

    मान लीजिए हमारे पास संख्याओं की एक सूची है। हमें उन संख्याओं को गिनना है जिनमें अंकों की संख्या सम है। इसलिए यदि ऐरे [12,345,2,6,7896] की तरह है, तो आउटपुट 2 होगा, क्योंकि 12 और 7896 में अंकों की संख्या सम है। समाधान के चरण सूची लें और प्रत्येक इंटीजर को स्ट्रिंग में कन्वर्ट करें यदि स्ट्रिंग की ल