Tìm số nhỏ nhất thỏa mãn điều kiện trong JavaScript
Chúng ta cần viết một hàm JavaScript nhận vào một số làm đối số đầu tiên, ví dụ n, và một mảng số làm đối số thứ hai. Hàm nên trả về số n chữ số nhỏ nhất là bội số chung của tất cả các phần tử được chỉ định trong mảng.
Nếu không tồn tại số n chữ số như vậy thì chúng ta nên trả về số nhỏ nhất như vậy.
Ví dụ: Nếu mảng là:
const arr = [12, 4, 5, 10, 9]
Với cả n = 2 và n = 3,
Đầu ra
Kết quả đầu ra nên là:
180
Do đó, hãy viết mã cho hàm này:
Ví dụ
Mã thực hiện như sau:
const arr = [12, 4, 5, 10, 9]
const num1 = 2;
const num2 = 3;
const allDivides = (arr, num) => arr.every(el => num % el === 0);
const smallestMultiple = (arr, num) => {
let smallestN = Math.pow(10, (num - 1));
while(!allDivides(arr, smallestN)){
smallestN++;
};
return smallestN;
};
console.log(smallestMultiple(arr, num1));
console.log(smallestMultiple(arr, num2));
Đầu ra
Kết quả trong console sẽ là:
180 180