본문 바로가기

2023.11.21-2024.05.31

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

문제 설명

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

 

 

제한사항

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

 

입출력 예 설명

입출력 예 #1

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

입출력 예 #2

  • numbers의 원소들의 평균 값은 94.0입니다.
1
2
3
4
5
6
7
8
9
10
11
12
13
class Solution {
    public double solution(int[] numbers) {
        double answer = 0;
        double sum = 0;
        for (int number : numbers){
            sum += number;
        }
        answer = sum/ numbers.length;
 
            
        return answer;
    }
}






 

이 코드는 배열 numbers의 원소들의 평균값을 계산하여 반환하는 메서드를 구현한 것입니다. 코드를 간단히 설명하면:

  1. double sum = 0;: 배열의 모든 원소를 더할 변수 sum을 초기화합니다.
  2. for (int number : numbers) { sum += number; }: 향상된 for문을 사용하여 배열의 각 원소를 순회하면서 sum에 더합니다.
double sum = 0;
for (int number : numbers) {
    sum += number;
}

 

여기서 int number는 배열 numbers의 각 요소를 참조할 변수를 선언한 것입니다.

코드는 배열 numbers의 각 원소를 차례로 number 변수에 할당하면서 반복됩니다.

따라서 각 반복에서 number는 배열의 원소를 나타냅니다.

이것을 통해 배열의 모든 원소를 더하는 작업을 간결하게 수행할 수 있습니다. 

 

 

  3. answer = sum / numbers.length;: 배열의 원소들을 모두 더한 후, 배열의 길이로 나누어 평균값을 계산합니다.

 

numbers.length는 배열 numbers의 길이(크기)를 나타내는 특별한 속성입니다.

배열의 길이는 배열이 포함하는 요소의 개수를 나타냅니다.

자바에서 배열의 길이를 구할 때는 배열의 .length 속성을 사용합니다. 이 속성은 배열이 생성될 때 자동으로 생성되며,

배열의 크기를 나타내는 정수값을 가지고 있습니다.

따라서 numbers.length는 배열 numbers에 속한 정수들의 개수를 나타내는 값입니다.

이 값을 활용하여 배열의 원소들의 합을 배열의 길이로 나누어 평균값을 계산하는 데 사용되었습니다.

 

 

 

  4. return answer;: 최종적으로 계산된 평균값을 반환합니다.

이 코드는 주어진 배열의 원소들의 평균값을 구하는데 효과적으로 동작합니다.

 

 

 

*향상된 for문

향상된 for문은 배열이나 컬렉션과 같은 Iterable 객체를 반복할 때 사용됩니다. 향상된 for문의 기본 구조는 다음과 같습니다:

for (변수타입 변수명 : 배열 또는 컬렉션) {
    // 반복할 내용
}

 

여기서 변수타입은 배열이나 컬렉션의 요소를 저장할 변수의 데이터 타입이고,

변수명은 현재 반복되고 있는 요소를 참조할 변수의 이름입니다.

 

 

'2023.11.21-2024.05.31' 카테고리의 다른 글

231228 HTML board.jsp  (1) 2024.01.02
231228 HTML index.jsp  (2) 2024.01.02
240102 프로그래머스 피자 나눠 먹기 3  (0) 2024.01.02
240102 프로그래머스 피자 나눠 먹기 2  (0) 2024.01.02
글씨체, 배경 색  (1) 2023.12.28