কম্পিউটার টিউটোরিয়াল

C++-এ N ডিজিটের সংখ্যা যাতে জোড় সংখ্যক শূন্য থাকে তা গণনা


আমাদের একটি সংখ্যা N ইনপুট হিসেবে দেওয়া আছে। লক্ষ্য হলো এমন সব N-ডিজিটের সংখ্যা বের করা যাতে শূন্য (০) এর সংখ্যা জোড় (even) হয়। সংখ্যাগুলোতে অগ্রগামী শূন্যও থাকতে পারে, যেমন N=3 হলে 001, 002, 003... 010... ইত্যাদি।

উদাহরণ দিয়ে বুঝি

ইনপুট − N=4

আউটপুট − N ডিজিটের জোড় শূন্য বিশিষ্ট সংখ্যা: ৭০৪৭

ব্যাখ্যা − সব ৪ ডিজিটের সংখ্যা: ০০০০, ০০১১, ০০১২, ০০১৩... ৯৯০০।

ইনপুট − N=5

আউটপুট − N ডিজিটের জোড় শূন্য বিশিষ্ট সংখ্যা: ৬৬৩৮৩

ব্যাখ্যা − সব ৫ ডিজিটের সংখ্যা: ০০০০১, ০০০০২, ০০০০৩... ৯৯৯০০।

প্রোগ্রামে ব্যবহৃত পদ্ধতি

প্রথমে মোট N-ডিজিটের সংখ্যা T = 10^N - 1। তারপর বিজোড় শূন্য বিশিষ্ট N-ডিজিট সংখ্যা O = 10^N - 8^N। বাকি জোড় শূন্য বিশিষ্ট সংখ্যা T - O/2। (নোট: কোডে ফর্মুলা একটু ভিন্ন, নিচে দেখুন।)

  • ইন্টিজার N ইনপুট নিন।
  • count_even(int N) ফাংশন N নিয়ে জোড় শূন্য বিশিষ্ট N-ডিজিট সংখ্যা রিটার্ন করে।
  • মোট N-ডিজিট সংখ্যা: total = pow(10, N) - 1।
  • বিজোড় শূন্য বিশিষ্ট: odd = pow(10, N) - pow(8, N)।
  • জোড় শূন্য: even = total - odd / 2।
  • 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++-এ ফ্যাক্টোরিয়ালে অঙ্ক গণনা

  2. C++-এ অদ্বিতীয় ডিজিটযুক্ত সংখ্যা গণনা

  3. সি++ প্রোগ্রাম: D দিয়ে বিভাজ্য N অঙ্কের সংখ্যা খুঁজে বের করা

  4. পাইথনে সম সংখ্যক ডিজিট বিশিষ্ট নম্বর খুঁজুন (Find Numbers with Even Number of Digits in Python)