এখানে আমরা একটি সমস্যা দেখতে পাব, আমাদের N এবং বেস B আছে। আমাদের কাজ হল কোন অগ্রণী 0 ছাড়াই বেস B এর সমস্ত N সংখ্যা গণনা করা। সুতরাং যদি N 2 হয় এবং B 2 হয় তাহলে চারটি সংখ্যা 00, 01, 10, 11 হবে। সুতরাং তাদের মধ্যে শুধুমাত্র দুটি এই বিভাগের জন্য বৈধ। এগুলি হল 10, 11, কোন অগ্রণী 0 নেই৷
৷যদি ভিত্তি B হয়, তাহলে 0 থেকে B – 1টি ভিন্ন সংখ্যা আছে। তাই B N বিভিন্ন N সংখ্যার মানের সংখ্যা তৈরি করা যেতে পারে (প্রধান 0 সহ)। প্রথম সংখ্যাটি 0m যদি আমরা এটিকে উপেক্ষা করি সেখানে B N-1 আছে সংখ্যা সুতরাং মোট N সংখ্যার সংখ্যা যার কোন অগ্রণী 0 নেই তা হল B N – B N-1
অ্যালগরিদম
countNDigitNum(N, B)
Begin total := BN with_zero := BN-1 return BN – BN-1 End
উদাহরণ
#include <iostream> #include <cmath> using namespace std; int countNDigitNum(int N, int B) { int total = pow(B, N); int with_zero = pow(B, N - 1); return total - with_zero; } int main() { int N = 5; int B = 8; cout << "Number of values: " << countNDigitNum(N, B); }
আউটপুট
Number of values: 28672