একটি গ্যারেজ সেলে আপনি সস্তায় একটি চমৎকার ভিন্টেজ টাইপরাইটার পেয়ে যান! উত্তেজিত হয়ে আপনি বাড়ি ছুটে যান, একটি কাগজ ঢোকান, আর টাইপ করা শুরু করেন। তবে আউটপুট দেখে আপনার উত্তেজনা কমে যায়: সব শব্দ এলোমেলো হয়ে গেছে! যেমন, এটি "post"-এর বদলে "stop" আর "stale"-এর বদলে "least" প্রিন্ট করে। সাবধানে আপনি আবার চেষ্টা করেন, কিন্তু এবার এটি "spot" আর "slate" প্রিন্ট করে। কিছু পরীক্ষা-নিরীক্ষার পর আপনি বুঝতে পারেন, প্রতিটি অক্ষর প্রিন্ট হওয়ার আগে একটি র্যান্ডম বিলম্ব থাকে, যা ক্রম নষ্ট করে দেয়। এখন আপনি বুঝতে পারেন কেন তারা এটা এত কম দামে বিক্রি করেছিল!
আপনি বুঝতে পারেন, এই অদ্ভুত বৈশিষ্ট্যটি আপনাকে অ্যানাগ্রাম তৈরি করার সুযোগ দেয়, অর্থাৎ অ্যানাগ্রাম হলো এমন শব্দ যা অন্য একটি শব্দের অক্ষরগুলো পুনর্বিন্যাস করে তৈরি হয়। আপনার এই আবিষ্কারে খুশি হয়ে, দিনের বাকি অংশটি আপনি শত শত অ্যানাগ্রাম তৈরি করতে ব্যয় করেন।
একটি লক্ষ্য শব্দ এবং এক বা একাধিক প্রার্থী শব্দ দেওয়া থাকলে, আপনার কাজ হলো এমন প্রার্থী শব্দগুলো খুঁজে বের করা যেগুলো লক্ষ্য শব্দের অ্যানাগ্রাম।
অ্যানাগ্রাম হলো অক্ষর পুনর্বিন্যাস করে নতুন একটি শব্দ তৈরি করা: উদাহরণস্বরূপ, "owns" শব্দটি "snow"-এর একটি অ্যানাগ্রাম।
একটি শব্দ নিজেই নিজের অ্যানাগ্রাম নয়: উদাহরণস্বরূপ, "stop" শব্দটি "stop"-এর অ্যানাগ্রাম নয়।
লক্ষ্য শব্দ এবং প্রার্থী শব্দগুলো এক বা একাধিক ASCII বর্ণমালার ক্যারেক্টার দিয়ে গঠিত (A-Z এবং a-z)।
ছোট হাতের ও বড় হাতের ক্যারেক্টার সমতুল্য: উদাহরণস্বরূপ, "PoTS" শব্দটি "sTOp"-এর একটি অ্যানাগ্রাম, কিন্তু "StoP" শব্দটি "sTOp"-এর অ্যানাগ্রাম নয়।
আপনার যে শব্দগুলো খুঁজে বের করতে হবে সেগুলো প্রার্থী শব্দগুলোর মধ্য থেকেই নিতে হবে, একই হাতের অক্ষর ব্যবহার করে।
লক্ষ্য "stone" এবং প্রার্থী শব্দ "stone", "tones", "banana", "tons", "notes" এবং "Seton" দেওয়া থাকলে, আপনার খুঁজে বের করতে হবে এমন অ্যানাগ্রাম শব্দগুলো হলো "tones", "notes" এবং "Seton"।
প্রার্থী শব্দগুলি যে ক্রমে তালিকাভুক্ত করা আছে, আপনাকে অ্যানাগ্রামগুলি ঠিক সেই ক্রমেই রিটার্ন করতে হবে।
আইসোগ্রামের মতোই, সিস্টেমে ইতিমধ্যে কোন কোন ডেটা টাইপ আছে সেগুলি একবার দেখে নেওয়া ভালো। আর মনে রাখবেন, tests ধাপে ধাপে নিন এবং একটু একটু করে একটি সমাধান গড়ে তোলার চেষ্টা করুন। ডিবাগারও আপনার বন্ধু হতে পারে, আর মনে রাখবেন, যেকোনো এক্সপ্রেশন বা ভ্যারিয়েবল ইভ্যালুয়েট করা সম্ভব, যাতে এটি কীভাবে কাজ করে তা আরও ভালোভাবে ভিজুয়ালাইজ করা ও বোঝা যায়।
Exercism-এ সাইন আপ করুন, Pharo ট্র্যাকের 50টি অনুশীলনী আর সত্যিকারের মানুষের মেন্টরিং দিয়ে শিখুন ও দক্ষ হয়ে উঠুন, সম্পূর্ণ বিনামূল্যে।