এই টিউটোরিয়ালে, আমরা প্রদত্ত পরিসরে একটি সংখ্যার সেট বিট অন্য নম্বরে কপি করার জন্য একটি প্রোগ্রাম নিয়ে আলোচনা করব৷
এর জন্য আমাদের দুটি পূর্ণসংখ্যা দেওয়া হবে। আমাদের কাজ হল প্রথম সংখ্যার বিটগুলি দেখা এবং সেই বিটগুলিকে দ্বিতীয় নম্বরে সেট করা যদি সেগুলি প্রদত্ত সীমার মধ্যে থাকে। অবশেষে উত্পাদিত অঙ্ক ফেরত দেওয়া।
উদাহরণ
#include <bits/stdc++.h>
using namespace std;
//copying set bits from y to x
void copySetBits(unsigned &x, unsigned y,
unsigned l, unsigned r){
//l and r should be between 1 and 32
if (l < 1 || r > 32)
return ;
for (int i=l; i<=r; i++){
int mask = 1 << (i-1);
if (y & mask)
x = x | mask;
}
}
int main() {
unsigned x = 10, y = 13, l = 2, r = 3;
copySetBits(x, y, l, r);
cout << "Modified x: " << x;
return 0;
} আউটপুট
Modified x: 14