শব্দ গণনা

শব্দ গণনা

মধ্যম

ভূমিকা

আপনি উচ্চ বিদ্যালয়ের শিক্ষার্থীদের বিদেশি ভাষা হিসেবে ইংরেজি শেখান।

আপনি সিদ্ধান্ত নিয়েছেন যে আপনার পুরো পাঠ্যক্রম টিভি শো-এর উপর ভিত্তি করে সাজাবেন। তাই কোন শব্দগুলো ব্যবহৃত হয় আর সেগুলো কতবার পুনরাবৃত্তি হয়, তা আপনাকে বিশ্লেষণ করতে হবে।

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

নির্দেশনা

আপনার কাজ হলো একটি নাটকের সাবটাইটেলে প্রতিটি শব্দ কতবার এসেছে তা গণনা করা।

এই নাটকগুলোর সাবটাইটেলে কেবল ASCII অক্ষর ব্যবহার করা হয়।

চরিত্রগুলো প্রায়ই সহজ-সরল ইংরেজিতে কথা বলে, they're বা it's-এর মতো সংকোচন ব্যবহার করে। যদিও এই সংকোচনগুলো দুটি শব্দ থেকে আসে (যেমন we are), সংকোচনটি (we're) একটি একক শব্দ হিসেবেই বিবেচিত হয়।

শব্দগুলো যেকোনো ধরনের যতিচিহ্ন (যেমন ":", "!" বা "?") বা হোয়াইটস্পেস (যেমন "\t", "\n" বা " ") দিয়ে আলাদা করা যায়। একমাত্র যে যতিচিহ্নটি শব্দ আলাদা করে না, তা হলো সংকোচনের ভেতরের অ্যাপোস্ট্রফি।

সংখ্যাগুলোও শব্দ হিসেবে বিবেচিত হয়। সাবটাইটেলে যদি It costs 100 dollars. লেখা থাকে, তাহলে 100 আলাদা একটি শব্দ হবে।

শব্দে ছোট-বড় হাতের অক্ষরের পার্থক্য নেই। যেমন, নিচের বাক্যটিতে you শব্দটি তিনবার এসেছে:

You come back, you hear me? DO YOU HEAR ME?

ফলাফলে শব্দগুলোর গণনা যে ক্রমে থাকবে, তা গুরুত্বপূর্ণ নয়।

এখানে একটি উদাহরণ দেওয়া হলো, যেখানে উপরে আলোচিত কয়েকটি বিষয় একসাথে আছে:

  • সহজ শব্দ
  • সংকোচন
  • সংখ্যা
  • ছোট-বড় হাতের অক্ষর নির্বিশেষে শব্দ
  • শব্দ আলাদা করার জন্য যতিচিহ্ন (অ্যাপোস্ট্রফি-সহ)
  • শব্দ আলাদা করার জন্য নানা রকম হোয়াইটস্পেস

"That's the password: 'PASSWORD 123'!", cried the Special Agent.\nSo I fled.

এই সাবটাইটেলের ম্যাপিং হবে:

123: 1
agent: 1
cried: 1
fled: 1
i: 1
password: 2
so: 1
special: 1
that's: 1
the: 2

সূত্র

এটি একটি ক্লাসিক সহজ সমস্যা, তবে Go Tour-তে এটি দেখে আমাদের মনে পড়ে যায়।
GitHub-এর মাধ্যমে সম্পাদনা করুন লিংকটি একটি নতুন উইন্ডো বা ট্যাবে খোলে
JavaScript Exercism

শব্দ গণনা শুরু করতে প্রস্তুত?

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