ট্র্যাক
/
Pharo
Pharo
/
অনুশীলনী
/
অ্যালার্জি
অ্যালার্জি

অ্যালার্জি

সহজ

নির্দেশনা

কোনো ব্যক্তির অ্যালার্জি স্কোর দেওয়া থাকলে, নির্দিষ্ট কোনো আইটেমে তার অ্যালার্জি আছে কি না এবং তার সম্পূর্ণ অ্যালার্জির তালিকা নির্ধারণ করুন।

একটি অ্যালার্জি পরীক্ষা একটি একক সংখ্যাগত স্কোর তৈরি করে, যেটিতে পরীক্ষা করা ওই ব্যক্তির সব অ্যালার্জির তথ্য থাকে।

যে আইটেমগুলো (এবং তাদের মান) পরীক্ষা করা হয়েছিল সেগুলো হলো:

  • eggs (1)
  • peanuts (2)
  • shellfish (4)
  • strawberries (8)
  • tomatoes (16)
  • chocolate (32)
  • pollen (64)
  • cats (128)

তাই Tom-এর যদি peanuts আর chocolate-এ অ্যালার্জি থাকে, তবে সে 34 স্কোর পায়।

এখন কেবল সেই 34 স্কোরটি দেওয়া থাকলে, আপনার প্রোগ্রামের এটি বলতে পারা উচিত:

  • উপরে তালিকাভুক্ত অ্যালার্জেনগুলোর যেকোনো একটিতে Tom-এর অ্যালার্জি আছে কি না।
  • Tom যে সব অ্যালার্জেনে অ্যালার্জিক, সেই সব অ্যালার্জেন।

দ্রষ্টব্য: একটি নির্দিষ্ট স্কোরে উপরে তালিকাভুক্ত না থাকা অ্যালার্জেনও থাকতে পারে (অর্থাৎ যেসব অ্যালার্জেনের স্কোর 256, 512, 1024 ইত্যাদি)। আপনার প্রোগ্রামের স্কোরের সেই অংশগুলো উপেক্ষা করা উচিত। যেমন, অ্যালার্জি স্কোর 257 হলে, আপনার প্রোগ্রামের কেবল eggs (1) অ্যালার্জিটির কথা জানানো উচিত।

ইমপ্লিমেন্টেশন

লক্ষ্য করুন, প্রতিটি আইটেম ২-এর একটি ঘাত, আর এমন একটি বৈশিষ্ট্য যা আপনি কাজে লাগাতে পারবেন।

Integer ক্লাসের 'bit manipulation' প্রোটোকলটি একবার দেখে নিন।

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

অ্যালার্জি শুরু করতে প্রস্তুত?

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

ডিপ ডাইভ: অ্যালার্জি!

আমরা বিট শিফটিং, বিটওয়াইজ তুলনা আর বাইনারি সংখ্যার অন্যান্য ধারণা ঘুরে দেখি! প্যাটার্ন ম্যাচিং ব্যবহার করা একটি সমাধানও দেখি, আর Erlang-এ রিকার্শন দিয়ে করা একটি মজার পদ্ধতিও।