আপনার বন্ধু Eliud তার দাদি Tigist-এর কাছ থেকে একটি খামার উত্তরাধিকারসূত্রে পেয়েছেন। তার দাদি ছিলেন একজন উদ্ভাবক এবং জিনিসপত্র অতিরিক্ত জটিলভাবে বানানোর প্রবণতা ছিল তার। মুরগির খাঁচায় একটি ডিজিটাল ডিসপ্লে আছে, যা একটি এনকোড করা সংখ্যা দেখায়, আর এই সংখ্যাটি তোলা যায় এমন সব ডিমের অবস্থান বোঝায়।
Eliud আপনাকে এমন একটি প্রোগ্রাম লিখতে বলছেন, যা খাঁচায় থাকা ডিমের প্রকৃত সংখ্যা দেখাবে।
অবস্থানের তথ্যের এনকোডিং হিসাব করা হয় এভাবে:
1 আর খালি জায়গায় 0 লিখে রাখুন। _ _ _ _ _ _ _
|E| |E|E| | |E|
_ _ _ _ _ _ _
|1|0|1|1|0|0|1|
89
4
_ _ _ _ _ _ _
| | | |E| | | |
_ _ _ _ _ _ _
|0|0|0|1|0|0|0|
8
1
আপনার কাজ হলো একটি সংখ্যার বাইনারি রূপে ১ আছে এমন বিটের সংখ্যা গণনা করা।
আপনার স্ট্যান্ডার্ড লাইব্রেরিতে থাকা ওই বিট-গণনার সুবিধাটিতে হাত দেবেন না! বরং অন্য মৌলিক টুলস ব্যবহার করে এটি নিজে সমাধান করুন।
PHP-তে বিটওয়াইজ অপারেটর রয়েছে।
উদাহরণস্বরূপ, "বিটওয়াইজ অ্যান্ড" অপারেটর (&) ব্যবহার করে যাচাই করা যায় যে একটি সংখ্যার একটি বিট ডিফাইন করা আছে কি না:
$number = 89; // 0b01011001
$mask16 = 16; // 0b00010000
$mask32 = 32; // 0b00100000
$isMask16 = ($number & $mask16) > 0; // 0b00010000 > 0 => TRUE
$isMask32 = ($number & $mask32) > 0; // 0b00000000 > 0 => FALSE
Exercism-এ সাইন আপ করুন, PHP ট্র্যাকের 11টি কনসেপ্ট122টি অনুশীলনী আর সত্যিকারের মানুষের মেন্টরিং দিয়ে শিখুন ও দক্ষ হয়ে উঠুন, সম্পূর্ণ বিনামূল্যে।