Viết hàm nhận mảng số, trả về mảng mới không chứa số nguyên tố.
Ví dụ
Mảng: [34, 56, 3, 56, 4, 343, 68, 56, 34, 87, 8, 45, 34]
Số 3 là nguyên tố → bị lọc bỏ.
Giải pháp
Mã triển khai:
const arr = [34, 56, 3, 56, 4, 343, 68, 56, 34, 87, 8, 45, 34];
const isPrime = n => {
if (n <= 1) return false;
if (n === 2) return true;
if (n % 2 === 0) return false;
for (let x = 3; x * x <= n; x += 2) {
if (n % x === 0) return false;
}
return true;
};
const filterPrime = arr => arr.filter(el => !isPrime(el));
console.log(filterPrime(arr));
Kết quả
Đầu ra trong console:
[34, 56, 56, 4, 343, 68, 56, 34, 87, 8, 45, 34]