কম্পিউটার

C++ এ একটি সংখ্যার ন্যূনতম উল্লেখযোগ্য বিট Kth প্রিন্ট করুন


এই সমস্যায়, আমাদের n এবং k দুটি সংখ্যা দেওয়া হয়েছে। আমাদের কাজ হল k th প্রিন্ট করা সংখ্যার ন্যূনতম তাৎপর্যপূর্ণ বিট।

সমস্যাটি বোঝার জন্য একটি উদাহরণ নেওয়া যাক

Input: n = 12 , k = 3
Output
1
Explanation:
Let’s see the binary representation of n: 12 = 1100

এখন, তৃতীয় সর্বনিম্ন উল্লেখযোগ্য বিট হল 1.

এই সমস্যা সমাধানের জন্য আমরা সংখ্যার বাইনারি বিট ব্যবহার করব। এবং সংখ্যার kth বিট ফলন। এর জন্য, আমরা সংখ্যাটির বাইনারি শিফটিং ব্যবহার করব এবং সংখ্যাটি (k-1) বার বাম-শিফ্ট করব। এখন স্থানান্তরিত নম্বর এবং আসল নম্বরের শেষ অপারেশন করার সময় যা kth বিটের মান দেবে।

উদাহরণ

নিচের কোডটি আমাদের সমাধানের বাস্তবায়ন দেখাবে

#include <bits/stdc++.h>
using namespace std;
int main() {
   int N = 12, K = 3;
   cout<<K<<"th significant bit of "<<N<<" is : ";
   bool kthLSB = (N & (1 << (K-1)));
   cout<<kthLSB;
   return 0;
}

আউটপুট

3th significant bit of 12 is : 1

  1. C++ এ মিতব্যয়ী নম্বর

  2. C++ ব্যবহার করে Kth বিট সেট সহ একটি পরিসরে অ্যারে উপাদানের সংখ্যার জন্য প্রশ্ন

  3. C++ পেন্টাটোপ নম্বর

  4. ব্যবহারকারী দ্বারা প্রবেশ করা নম্বর মুদ্রণের জন্য C++ প্রোগ্রাম