মনে করুন, আমাদের একটি সংখ্যা n আছে। আমাদের কাজ হল 1 থেকে n পর্যন্ত যেসব পূর্ণসংখ্যা শুধু ০ এবং ১ অঙ্ক দিয়ে গঠিত, তাদের সংখ্যা বের করা। তাই যদি n = 15 হয়, তবে আউটপুট হবে 3। কারণ সংখ্যাগুলো হল 1, 10, 11।
এটি সমাধানের জন্য, আমরা রিকারসিভ ফাংশন ব্যবহার করে ০ এবং ১ দিয়ে পূর্ণসংখ্যা তৈরি করব। নিচের কোডটি থেকে আরও ভালো ধারণা मिलবে।
উদাহরণ
#include <iostream>
using namespace std;
int numberOfValues(int p, int n) {
if (p > n)
return 0;
return 1 + numberOfValues(p * 10, n) + numberOfValues(p * 10 + 1, n);
}
int main() {
int n = 120;
cout << "Number of values using 0s and 1s: " << numberOfValues(1, n);
}
আউটপুট
Number of values using 0s and 1s: 7