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

JavaScript에서 배열의 양수, 음수 및 0 기여도

<시간/>

다음과 같은 정수 배열(양수, 음수 및 0)이 있다고 가정합니다. -

const arr = [23, -1, 0, 11, 18];

이러한 배열을 첫 번째이자 유일한 인수로 사용하는 JavaScript 함수를 작성해야 합니다. 그런 다음 함수는 양수, 음수 및 0이라는 세 가지 다른 그룹 모두에 대한 분수 비율을 찾아야 합니다.

예를 들어 -

위 배열의 경우 길이는 5이고 이 배열의 출력은 -

여야 합니다.
const output = [.2, .2, .6];

출력 배열에는 항상 음수, 0 및 양의 정수의 분수 비율을 나타내는 3개의 숫자가 포함됩니다. 답을 확인하는 한 가지 대략적인 방법은 이 세 값을 더하고 1에 가까운지 확인하는 것입니다. 맞으면 문제를 올바르게 해결했을 가능성이 큽니다.

예시

이에 대한 코드는 -

const arr = [23, -1, 0, 11, 18];
const findRatio = (arr = []) => {
   const { length } = arr;
   const res = [0, 0, 0];
   for(let i = 0; i < arr.length; i++){
      const el = arr[i];
      const key = el / Math.abs(el || 1);
      res[key + 1]++;
   };
   return res.map(el => el / length);
};
console.log(findRatio(arr));

출력

콘솔의 출력은 -

[0.2, 0.2, 0.6]