📝코딩테스트

코딩테스트 1일차 - 배열의 평균값(Swift)

Kendrick 2023. 3. 28. 01:40

문제 설명

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


제한사항
  • 0 ≤ numbers의 원소 ≤ 1,000
  • 1 ≤ numbers의 길이 ≤ 100
  • 정답의 소수 부분이 .0 또는 .5인 경우만 입력으로 주어집니다.

입출력 예numbersresult
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10] 5.5
[89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99] 94.0

입출력 예 설명

입출력 예 #1

  • numbers의 원소들의 평균 값은 5.5입니다.

입출력 예 #2

  • numbers의 원소들의 평균 값은 94.0입니다.

 

방법01 

for문 사용

func sol(_ a:[Int]) -> Double {
    
    var result = 0
    for i in a {
        result += i
    }
    return Double(result) / Double(a.count)
}
sol([4,8,12,16]) //10

1.  겺과같을 담을 result변수 생성

2. result변수 / a(매개변수 개수를 파악사는 count쓴)

 

방법02

reduce함수 사용 (값을 하나로 통합해줌)

func sol1(_ b:[Int]) -> Double {
    return Double(b.reduce(0,+)) / Double(b.count)
}

sol1([4,8,12,16]) //10

1. reduce(0,+)를 사용해서 b의 모든 요소를 합산함

2. 요소의 개수를 구함

3 평균 구하기 

 

 

 

 

출처 : https://school.programmers.co.kr/