brunch

코딩테스트 <배열의 평균값>

프로그래머스 <배열의 평균값>

by Lynn

문제 설명

정수 배열 numbers가 매개변수로 주어집니다. numbers의 원소의 평균값을 return하도록 solution 함수를 완성해주세요.


제한사항

0 ≤ numbers의 원소 ≤ 1,000

1 ≤ numbers의 길이 ≤ 100

정답의 소수 부분이 .0 또는 .5인 경우만 입력으로 주어집니다.


문제풀이

스크린샷 2022-11-08 오후 10.04.09.png

function solution(numbers) {

let sum = 0

for (let i = 0; i < numbers.length; i++) {

sum += numbers[i]

}

let answer = sum / numbers.length;

return answer;

}


중요개념

배열 요소, 배열 길이, for 반복문을 이용하는 문제.


만약 numbers = [2, 4, 6, 8] 이라면

numbers 배열의 인덱스는 3

numbers 배열의 배열 길이. 곧 numbers.length는 4가 된다.

이때 numbers 원소의 평균값을 구하려면,

numbers 평균값 = numbers 원소들의 합 % numbers.length (20 % 4)


이를 프로그래밍 식에 적용하면


let sum = 0

for (let i = 0; i < numbers.length; i++) {

/*

numbers의 배열 요소 = numbers.length-1

i가 0부터 numbers.length 길이 미만인 수까지 반복식을 달아준다.

*/

sum += numbers[i]

}


i가 0일 때, numbers[0] = 2

i가 1일 때, numbers[1] = 4

i가 2일 때, numbers[2] = 6

i가 3일 때, numbers[3] = 8

numbers.length는 4이므로 i는 3일때 까지만 반복 수행.


sum = 0 + numbers[0] = 2

sum = 2 + numbers[1] = 6

sum = 6 + numbers[2] = 12

sum = 12 + numbers[3] = 20


let answer = sum / numbers.length;

return answer;

}


keyword
작가의 이전글코딩테스트 <피자 나눠 먹기1>