কম্পিউটার টিউটোরিয়াল

টাকার পরিমাণের জন্য কমপক্ষে নোট গণনা - JavaScript

এই প্রোগ্রামে আমরা দেখব কিভাবে একটি নির্দিষ্ট টাকার পরিমাণের জন্য কমপক্ষে কতগুলো নোট লাগবে সেটি বের করা যায়।

নোটের ডিনোমিনেশন

বাংলাদেশি মুদ্রার নোট: ১০০০, ৫০০, ১০০, ৫০, ২০, ১০, ৫, ২, ১ টাকা।

উদাহরণ

৫১২ টাকার জন্য:

  • ১টি ৫০০ টাকার নোট
  • ১টি ১০ টাকার নোট
  • ১টি ২ টাকার নোট

মোট ৩টি নোট।

সমাধান

const sum = 512;

const countNotes = (amount) => {
  const denominations = [1000, 500, 100, 50, 20, 10, 5, 2, 1];
  let count = 0;
  let remaining = amount;
  
  for (const note of denominations) {
    if (remaining >= note) {
      const noteCount = Math.floor(remaining / note);
      count += noteCount;
      remaining -= noteCount * note;
    }
  }
  
  return count;
};

console.log(countNotes(sum)); // 3

বेहतर পদ্ধতি (Greedy Algorithm)

উপরোক্ত কোডটি লোভী অ্যালগরিদম (Greedy Algorithm) ব্যবহার করেছে যা বাংলাদেশি মুদ্রার মতো ক্যানোনিকাল কয়েন সিস্টেমের জন্য সর্বোত্তম ফলাফল দেয়।

উৎপাদন

3
  1. জাভাস্ক্রিপ্টে nth প্রাইম নম্বর বের করা

  2. জাভাস্ক্রিপ্টে নম্বরের নির্দিষ্ট ডিজিট পর্যন্ত ডিজিট সম বের করা

  3. জাভাস্ক্রিপ্টে সংখ্যার প্রাইম অঙ্কগুলোর যোগফল বের করা

  4. জাভাস্ক্রিপ্টে রেজিস্ট্রেশন নম্বর থেকে নাম্বার প্লেট বের করা