কম্পিউটার

n প্রতিনিধিত্ব করার জন্য প্রয়োজনীয় বাইনারি ডিজিট সংখ্যার ন্যূনতম সংখ্যা গণনা করার জন্য C++ প্রোগ্রাম


ধরুন আমাদের একটি সংখ্যা n আছে। একটি সংখ্যা একটি বাইনারি দশমিক হয় যদি এটি একটি ধনাত্মক পূর্ণসংখ্যা হয় এবং এর দশমিক স্বরলিপিতে সমস্ত সংখ্যা হয় 0 বা 1৷ উদাহরণস্বরূপ, 1001 (এক হাজার এবং এক) একটি বাইনারি দশমিক, যেখানে 1021 নয়৷ n সংখ্যা থেকে, আমাদের কিছু (অগত্যা স্বতন্ত্র) বাইনারি দশমিকের যোগফল হিসাবে n উপস্থাপন করতে হবে। তারপর তার জন্য প্রয়োজনীয় বাইনারি দশমিকের ক্ষুদ্রতম সংখ্যা গণনা করুন।

সুতরাং, যদি ইনপুটটি n =121 এর মত হয়, তাহলে আউটপুট হবে 2, কারণ এটিকে 110 + 11 বা 111 + 10 হিসাবে উপস্থাপন করা যেতে পারে।

পদক্ষেপ

এটি সমাধান করতে, আমরা এই পদক্ষেপগুলি অনুসরণ করব -

ans := -1
while n > 0, do:
   ans := maximum of ans and (n mod 10)
   n := n / 10
return ans

উদাহরণ

আরো ভালোভাবে বোঝার জন্য আসুন নিচের বাস্তবায়ন দেখি -

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

int solve(int n) {
   int ans = -1;
   while (n > 0) {
      ans = max(ans, n % 10);
      n /= 10;
   }
   return ans;
}
int main() {
   int n = 121;
   cout << solve(n) << endl;
}

ইনপুট

121

আউটপুট

2

  1. C++ এ বাইনারি ম্যাট্রিক্সকে শূন্য ম্যাট্রিক্সে রূপান্তর করতে অপারেশনের সংখ্যা গণনা করার প্রোগ্রাম

  2. C++ এ সংখ্যা হিসেবে 0 আছে এমন সংখ্যা গণনা করুন

  3. C++ এ প্রদত্ত সংখ্যা দ্বারা বিভাজ্য n সংখ্যার সংখ্যা গণনা করুন

  4. অক্টাল নম্বরকে বাইনারি নম্বরে রূপান্তর করতে C++ প্রোগ্রাম