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

জাভাস্ক্রিপ্টে সংখ্যাকে প্রাইম ফ্যাক্টর পাওয়ার ও প্রোডাক্ট আকারে প্রকাশ করা

সমস্যা

আমাদের একটি জাভাস্ক্রিপ্ট ফাংশন লিখতে হবে যা একটি পজিটিভ ইন্টিজার নেবে। ফাংশনটি এই নম্বরকে কিছু প্রাইম নম্বরের পাওয়ার যোগফল আকারে প্রকাশ করবে।

অতএব, নম্বর n এর জন্য ফাংশনটি নিচের মতো স্ট্রিং রিটার্ন করবে:

n = "(p1**n1)(p2**n2)...(pk**nk)"

যেখানে p1, p2, p3..pk হলো প্রাইম নম্বর এবং n1, n2,..nk হলো তাদের নন-নেগেটিভ পাওয়ার এবং a ** b মানে a-এর b ঘাত।

উদাহরণ

নিচে কোড দেওয়া হলো:

const isPrime = num => { 
    for(let i = 2; i < num; i++){ 
        if(num % i === 0){ 
            return false; 
        } 
    }; 
    return num > 1; 
} 
const count = (arr = [], n = 1) => { 
for(const k in arr){ 
    if(n % k === 0){ 
          arr[k] += 1; 
          return count(arr, n / k) 
      } 
   }; 
            return arr; 
}; 
const primeFactors = (n) => { 
    const res = []; 
    for(let i = 2; i < n; i++){ 
        if(isPrime(i)){ 
            res.push(i); 
        } 
    }; 
  const arr = []; 
    for(const el in res){ 
        arr[el] = 0; 
    }; 
    count(arr,n); 
    let str = ''; 
    for(const x in arr){ 
  if(arr[x] > 1){ 
          str += '(%s**%s)' %(x,arr[x]) 
      }else if(arr[x] === 1){ 
          str += '(%s)' % (x) 
      }; 
  }; 
   return str 
}; 
console.log(primeFactors(86240));

আউটপুট

(2**5)(5)(7**2)(11)
  1. জাভাস্ক্রিপ্টে সংখ্যার n সংখ্যক liên tục অঙ্কের সর্বোচ্চ গুণফল বের করা

  2. জাভাস্ক্রিপ্টে 1 থেকে n পর্যন্ত সব পূর্ণসংখ্যার ১ এর সংখ্যা গণনা করা

  3. জাভাস্ক্রিপ্টে সংখ্যা ৪-এর বৈধ ঘাত কিনা যাচাই করা

  4. জাভাস্ক্রিপ্টে ডেসিমেল সংখ্যার বিট রিভার্স করে নতুন ডেসিমেল বের করা