আপনি কিছু বন্ধু এবং বন্ধুদের বন্ধুদের নিয়ে একটি গোপন কোডিং ক্লাব শুরু করছেন। সবাই একে অন্যকে চেনে না, তাই আপনি আর আপনার বন্ধুরা মিলে সিদ্ধান্ত নিয়েছেন যে একটি গোপন হ্যান্ডশেক বানাবেন, যা দিয়ে চিনতে পারবেন যে কেউ এই ক্লাবের সদস্য। আপনি চান না যে এই গোপন বিষয়টি না-জানা কেউ কোডটি ভেঙে ফেলতে পারে।
আপনি কোডটি এমনভাবে সাজিয়েছেন যে একজন ১ থেকে ৩১-এর মধ্যে একটি সংখ্যা বলে, আর অন্য জন সেটিকে কয়েকটি অ্যাকশনের ক্রমে রূপান্তর করে।
আপনার কাজ হলো ১ থেকে ৩১-এর মধ্যে একটি সংখ্যাকে গোপন হ্যান্ডশেকের অ্যাকশনের একটি ক্রমে রূপান্তর করা।
সংখ্যাটিকে বাইনারিতে রূপান্তর করার পর তার সবচেয়ে ডান দিকের পাঁচটি ডিজিট দেখে অ্যাকশনের ক্রমটি বেছে নেওয়া হয়। সবচেয়ে ডান দিকের ডিজিট থেকে শুরু করুন এবং বাম দিকে এগিয়ে যান।
সংখ্যাটির প্রতিটি স্থানের জন্য অ্যাকশনগুলো হলো:
00001 = wink
00010 = double blink
00100 = close your eyes
01000 = jump
10000 = Reverse the order of the operations in the secret handshake.
চলুন 9 সংখ্যাটি উদাহরণ হিসেবে নিই:
1001।wink।এটি ছিল শেষ ডিজিট, তাই চূড়ান্ত কোড হলো:
wink, jump
২৬ সংখ্যাটি দেওয়া হলে, যেটি বাইনারিতে 11010, আমরা নিচের অ্যাকশনগুলো পাই:
সুতরাং ২৬-এর গোপন হ্যান্ডশেক হলো:
jump, double blink
বাইনারি কী বা এটি কীভাবে কাজ করে তা নিয়ে নিশ্চিত না হলে, [এই বাইনারি টিউটোরিয়ালটি][intro-to-binary] দেখুন। [intro-to-binary]: https://medium.com/basecs/bits-bytes-building-with-binary-13cb4289aafa
Exercism-এ সাইন আপ করুন, Delphi Pascal ট্র্যাকের 76টি অনুশীলনী আর সত্যিকারের মানুষের মেন্টরিং দিয়ে শিখুন ও দক্ষ হয়ে উঠুন, সম্পূর্ণ বিনামূল্যে।