ট্র্যাক
/
Ruby
Ruby
/
অনুশীলনী
/
কিংডারগার্টেন বাগান
কিংডারগার্টেন বাগান

কিংডারগার্টেন বাগান

মধ্যম

ভূমিকা

কিন্ডারগার্টেনের ক্লাসে শিশুরা গাছ জন্মানো সম্পর্কে শিখছে। শিক্ষক ভাবলেন, মাটিতে লাগিয়ে গাছ বড় করার জন্য ক্লাসের শিশুদের বীজ দিলে ভালো হবে। এই উদ্দেশ্যে শিশুরা জানালার সিল বরাবর ছোট ছোট কাপ রেখেছে এবং প্রতিটি কাপে এক ধরনের গাছ লাগিয়েছে। চার ধরনের বীজের মধ্যে থেকে শিশুরা নিজেদের পছন্দেরটি বেছে নিতে পেরেছে: grass, clover, radishes, and violets.

নির্দেশনা

আপনার কাজ হলো, একটি ডায়াগ্রাম দেখে নির্ধারণ করা কিন্ডারগার্টেন ক্লাসের প্রতিটি শিশু কোন গাছের দায়িত্বে আছে।

ক্লাসে ১২ জন শিশু আছে:

  • Alice, Bob, Charlie, David, Eve, Fred, Ginny, Harriet, Ileana, Joseph, Kincaid এবং Larry।

চার ধরনের বীজ রোপণ করা হয়:

গাছ ডায়াগ্রামে এনকোডিং
Grass G
Clover C
Radish R
Violet V

প্রতিটি শিশু চারটি কাপ পায়, প্রতি সারিতে দুটি:

[window][window][window]
........................ # each dot represents a cup
........................

তাদের শিক্ষক শিশুদের নামের বর্ণানুক্রমে কাপ বরাদ্দ করেন, অর্থাৎ Alice প্রথমে এবং Larry সবার শেষে আসে।

Alice-এর গাছগুলো দেখানো একটি উদাহরণ ডায়াগ্রাম এখানে:

[window][window][window]
VR......................
RG......................

প্রথম সারিতে, জানালার সবচেয়ে কাছে, তার একটি violet ও একটি radish আছে। দ্বিতীয় সারিতে তার একটি radish ও কিছু grass আছে।

আপনার প্রোগ্রামকে জানালার সবচেয়ে কাছের সারি থেকে শুরু করে বাম থেকে ডানে গাছগুলো দেওয়া হবে। এটি থেকে, কোন গাছ কোন শিক্ষার্থীর তা নির্ধারণ করতে পারবে।

উদাহরণস্বরূপ, যদি বলা হয় বাগানটি এমন দেখতে:

[window][window][window]
VRCGVVRVCGGCCGVRGCVCGCGV
VRCCCGCRRGVCGCRVVCVGCGCV

তাহলে Alice-এর গাছ চাওয়া হলে, এটি দেবে:

  • Violets, radishes, violets, radishes

আর Bob-এর গাছ চাইলে পাওয়া যাবে:

  • Clover, grass, clover, clover

বাস্তবায়ন

এই অনুশীলনীতে আপনাকে এমন একটি ক্লাস লিখতে হবে, যা কিন্ডারগার্টেনের প্রতিটি শিশুর জন্য একটি করে মেথড দেয়। আপনি যদি নিজে নিজে ১২টি আলাদা মেথড ডিফাইন করার বদলে একটু মেটাপ্রোগ্রামিং ব্যবহার করেন, তাহলে আপনার কাজ কম পুনরাবৃত্তিমূলক (এবং আরও মজার!) হয়ে উঠবে। কোথা থেকে শুরু করবেন তা নিশ্চিত না হলে method_missing বা define_method মেথডগুলো একটু ঘেঁটে দেখুন।

GitHub-এর মাধ্যমে সম্পাদনা করুন লিংকটি একটি নতুন উইন্ডো বা ট্যাবে খোলে
Ruby Exercism

কিংডারগার্টেন বাগান শুরু করতে প্রস্তুত?

Exercism-এ সাইন আপ করুন, Ruby ট্র্যাকের 21টি কনসেপ্ট121টি অনুশীলনী আর সত্যিকারের মানুষের মেন্টরিং দিয়ে শিখুন ও দক্ষ হয়ে উঠুন, সম্পূর্ণ বিনামূল্যে।