[Programmers] 평균 구하기
2022. 9. 22. 11:27ㆍ기록/Programmers
- 목차
문제 설명
정수를 담고 있는 배열 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 sum = 0;
arr.forEach((num) => {
sum += num;
});
sum = sum / arr.length;
return sum;
}
forEach 함수를 이용해 배열의 값을 하나씩 꺼내어 answer 변수에 누적해서 더해주었다.
그 후 answer 값을 배열의 길이만큼 나누었다.
다른 사람의 문제 풀이
function average(array){
return array.reduce((a, b) => a + b) / array.length;
}
reduce 함수를 이용해 값을 누적시켜 리턴하고, 그 값을 배열의 길이만큼 나누었다.
화살표 함수를 사용해 코드를 더 간결하게 작성하였다.
function average(array){
var sum = 0;
for(var i = 0; i < array.length; i++)
sum += array[i];
return sum / array.length;
}
배열의 요소를 인덱스를 이용해 하나씩 꺼내기 위해서 for 문을 사용했다.
var 를 사용한 것을 보니 ES5 문법이 적용된 가장 기본적인 코드인 것 같다.
ES5 문법이 적용된 코드와 ES6 문법이 적용된 코드를 비교해 보니
확실히 ES6 문법으로 작성한 코드가 훨씬 가독성이 좋으면서도 간결해 보인다.
앞으로 ES6 에서 새로 제공된 요소들을 잘 활용해야겠다.