🔥 CodingTest/프로그래머스

[Lv.1] 평균 구하기

김_수댕 2024. 9. 24. 17:53
반응형

2024.09.23 푼 문제

https://school.programmers.co.kr/learn/courses/30/lessons/12944?language=javascript

 

✅ 문제

정수를 담고 있는 배열 arr의 평균값을 return하는 함수, solution을 완성해보세요.

제한 사항

  • arr은 길이 1 이상, 100 이하인 배열입니다.
  • arr의 원소는 -10,000 이상 10,000 이하인 정수입니다.

입출력 예

arr return
[1,2,3,4] 2.5
[5,5] 5

🔎 풀이 방법

배열을 돌면서 안에 있는 거 다 더하고 배열의 길이로 나누기

💻 코드

function solution(arr) {
    let answer = 0;
    const length = arr.length;
    for(let i = 0; i < length; i++) {
        answer += arr[i];
    }
    return answer/length;
}

🔖 채점 결과

정확성: 100.0
합계: 100.0 / 100.0

👀 추가 공부

reduce()

function average(array){
  return array.reduce((a,b) => a+b) / array.length;
}

 

✚ reduce() 함수

  • 네 개의 매개변수를 갖는다.
    1. 누산기 (acc) : 콜백의 반환값 누적
    2. 현재 값 (cur): 현재 요소
    3. 현재 인덱스 (idx) ➡️ optional : 현재 요소의 인덱스
    4. 원본 배열 (src) ➡️ optional : reduce()를 호출한 배열
  • 위의 코드를 해석하면 a는 반환값을 누적하므로 시작은 0, 후에 array를 돌 때마다 + b 한다.
반응형