কম্পিউটার

জাভাস্ক্রিপ্টে n পর্যন্ত 1s সংখ্যা গণনা করা হচ্ছে


আমাদের একটি জাভাস্ক্রিপ্ট ফাংশন লিখতে হবে যা একটি ধনাত্মক পূর্ণসংখ্যা নেয়, সংখ্যা বলুন৷

আমাদের ফাংশনের কাজ হল n পর্যন্ত সমস্ত ধনাত্মক পূর্ণসংখ্যাতে প্রদর্শিত 1s-এর মোট সংখ্যা গণনা করা (n সহ, যদি এটিতে 1 থাকে)।

তারপর ফাংশন অবশেষে এই গণনা ফেরত দেওয়া উচিত.

যেমন −

যদি ইনপুট নম্বর হয় −

const num = 31;

তারপর আউটপুট −

হওয়া উচিত
const output = 14;

কারণ 1 এ উপস্থিত হয়,

1, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 21, 31

উদাহরণ

নিম্নলিখিত কোড -

const num = 31;
const countOnes = (num = 1) => {
   if(num <= 0 ){
      return 0
   };
   let sum = 0
   num += '';
   let helper = p => {
      let leftNum = 0
      let rightNum = 0
      let di = num[p]
      if(p>0){
         leftNum = parseInt(num.slice(0,p))
      }
      if(p+1 < num.length){
         rightNum = parseInt(num.slice(p+1))
      }
      if(di > 1){
         sum += (leftNum+1)*(10**(num.length-1-p))
      } else if(di == 0){
         sum += (leftNum)*(10**(num.length-1-p))
      } else{
         sum += (leftNum)*(10**(num.length-1-p)) + rightNum + 1
      }
   }
   for(let i =0; i < num.length; i++){
      helper(i)
   };
   return sum;
};
console.log(countOnes(num));

আউটপুট

নিম্নোক্ত কনসোল আউটপুট -

14

  1. জাভাস্ক্রিপ্টে n পর্যন্ত গণনা করার সময় 9s গণনা সংখ্যার সম্মুখীন হয়েছে

  2. বিপরীত সংখ্যাটি জাভাস্ক্রিপ্টের একটি মৌলিক সংখ্যা

  3. জাভাস্ক্রিপ্টে দুটি আইপি ঠিকানার মধ্যে উপস্থিত আইপি ঠিকানার সংখ্যা গণনা করা হচ্ছে

  4. জাভাস্ক্রিপ্টে নম্বর প্যালিনড্রোম তৈরির ধাপগুলি গণনা করা হচ্ছে