ট্র্যাক
/
Odin
Odin
/
অনুশীলনী
/
বৃষ্টির ফোঁটা
বৃষ্টির ফোঁটা

বৃষ্টির ফোঁটা

সহজ

ভূমিকা

রেইনড্রপস হলো FizzBuzz চ্যালেঞ্জের কিছুটা বেশি জটিল একটি সংস্করণ, যা একটি ক্লাসিক ইন্টারভিউ প্রশ্ন।

নির্দেশনা

আপনার কাজ হলো একটি সংখ্যাকে তার সংশ্লিষ্ট বৃষ্টির ফোঁটার শব্দে রূপান্তর করা।

যদি কোনো প্রদত্ত সংখ্যা:

  • ৩ দিয়ে বিভাজ্য হয়, ফলাফলে "Pling" যোগ করুন।
  • ৫ দিয়ে বিভাজ্য হয়, ফলাফলে "Plang" যোগ করুন।
  • ৭ দিয়ে বিভাজ্য হয়, ফলাফলে "Plong" যোগ করুন।
  • ৩, ৫ বা ৭ দিয়ে বিভাজ্য নয়, তাহলে ফলাফল হবে সংখ্যাটি স্ট্রিং হিসেবে।

উদাহরণ

  • ২৮ সংখ্যাটি ৭ দিয়ে বিভাজ্য, কিন্তু ৩ বা ৫ দিয়ে নয়, তাই ফলাফল হবে "Plong".
  • ৩০ সংখ্যাটি ৩ ও ৫ দিয়ে বিভাজ্য, কিন্তু ৭ দিয়ে নয়, তাই ফলাফল হবে "PlingPlang".
  • ৩৪ সংখ্যাটি ৩, ৫ বা ৭ কোনোটিই দিয়ে বিভাজ্য নয়, তাই ফলাফল হবে "34".
Note

একটি সংখ্যা আরেকটি সংখ্যা দিয়ে নিঃশেষে বিভাজ্য কি না তা পরীক্ষা করার একটি কমন উপায় হলো রিমেইন্ডার বা মডুলাস শূন্যের সাথে তুলনা করা। এসবের একটির (বা দুটিরই) জন্য বেশিরভাগ প্রোগ্রামিং ভাষায় অপারেটর বা ফাংশন থাকে।

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

এই অনুশীলনীতে আপনি এমন একটি প্রসিডিউর ইমপ্লিমেন্ট করবেন, যা যে স্ট্রিংটি রিটার্ন করে সেটি অ্যালোকেট করার কথা। আর ওই স্ট্রিংটি ডিলোকেট করার দায়িত্ব প্রসিডিউরটির কলারের।

// The procedure will be called like that:
converted := convert(3)
// ...
// and eventually the caller will delete the string
delete(converted)
GitHub-এর মাধ্যমে সম্পাদনা করুন লিংকটি একটি নতুন উইন্ডো বা ট্যাবে খোলে
Odin Exercism

বৃষ্টির ফোঁটা শুরু করতে প্রস্তুত?

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

ডিপ ডাইভ: বৃষ্টির ফোঁটা!

কিছু সমাধান ঘুরে দেখুন, যেখানে আছে ফাংশনাল পাইপলাইন, ম্যাট্রিক্স গুণ, ম্যাক্রো দিয়ে তৈরি আগেই হিসাব করে রাখা টেবিল-ভিত্তিক সমাধান, অবজেক্ট ওরিয়েন্টেড পদ্ধতি, Python ও TCL-এর চমকপ্রদ ব্যবহার, আর একটি এন্টারপ্রাইজ সংস্করণ।