Computer >> 컴퓨터 >  >> 프로그램 작성 >> JavaScript

JavaScript에서 숫자 배열의 최소 공배수


범위를 지정하는 두 개의 숫자 배열이 있다고 가정합니다. 우리는 제공된 매개변수의 가장 작은 공배수를 찾는 함수를 작성해야 하며, 이 매개변수 사이의 범위에 있는 모든 순차 숫자는 물론 둘 다로 균등하게 나눌 수 있습니다.

범위는 반드시 숫자 순서가 아닌 두 숫자의 배열입니다.

예를 들어, [1, 3]이 주어지면 1과 3 사이의 모든 숫자로 균등하게 나눌 수 있는 1과 3의 최소 공배수를 찾아야 합니다. 여기서 답은 6입니다.

예시

이에 대한 코드는 -

const range = [1, 12];
const smallestCommon = (array = []) => {
   arr = array.slice().sort((a, b) => a − b);
   let result = [];
   for(let i = arr[0]; i <= arr[1]; i++){
      result.push(i);
   };
   let i = 1;
   let res;
   while(result.every(item=>res%item==0)==false){
      i++;
      res = arr[1]*i;
   }
   return res;
}
console.log(smallestCommon(range));

출력

콘솔의 출력은 -

27720