Computer >> Máy Tính >  >> Lập trình >> Javascript

Mảng thừa số nguyên tố của một số trong JavaScript

Chúng tôi được yêu cầu viết một hàm JavaScript nhận vào một số và trả về một mảng gồm tất cả các số nguyên tố chia chính xác số đầu vào.

Ví dụ:nếu số đầu vào là 105.

Sau đó, kết quả đầu ra phải là -

const output = [3, 5, 7];

Ví dụ

Mã cho điều này sẽ là -

const num = 105;
const isPrime = (n) => {
   for(let i = 2; i <= n/2; i++){
      if(n % i === 0){
         return false;
      }
   };
   return true;
};
const findPrimeFactors = num => {
   const res = num % 2 === 0 ? [2] : [];
   let start = 3;
   while(start <= num){
      if(num % start === 0){
         if(isPrime(start)){
            res.push(start);
         };
      };
      start++;
   };
   return res;
};
console.log(findPrimeFactors(18));

Đầu ra

Đầu ra trong bảng điều khiển -

[3, 5, 7]