Computer >> 컴퓨터 >  >> 프로그래밍 >> PHP

PHP에서 숫자 배열의 평균 계산하기 – 간단하고 효율적인 3가지 방법

배열의 평균(또는 산술 평균)은 프로그래밍에서 가장 기본이 되는 수학 연산 중 하나입니다. 데이터 분석, 금융, 통계 리포트 등 다양한 분야에서 활용되며, 실제 웹 개발에서도 상품의 평점 평균을 계산하거나 시험 점수의 평균을 구하는 기능 등에 널리 사용됩니다. 이 글에서는 PHP로 숫자 배열의 평균값을 계산하는 세 가지 대표적인 방법을 예제 코드와 함께 자세히 살펴보겠습니다.

평균(Average)이란?

평균은 배열 내 모든 요소의 합을 구한 뒤, 그 합을 요소의 총 개수로 나누어 계산합니다.

공식: 평균 = (모든 요소의 합) ÷ (요소의 총 개수)

예시:

  • 배열: [2, 4, 6, 8]
  • 합계: 2 + 4 + 6 + 8 = 20
  • 개수: 4개
  • 평균: 20 ÷ 4 = 5

1. 내장 함수 사용하기

PHP에는 평균을 손쉽게 계산할 수 있는 내장 함수가 마련되어 있습니다. array_sum() 함수는 배열 요소들의 합계를 구하고, count() 함수는 배열의 요소 개수를 반환합니다. 이 두 함수를 조합하면 단 몇 줄의 코드로 평균을 구할 수 있습니다.

<?php
// 배열 정의
$numbers = [1, 2, 3, 4, 5];

// 배열의 모든 요소 합계 계산
$sum = array_sum($numbers);

// 배열 요소의 총 개수 확인
$count = count($numbers);

// 평균 계산
$average = $sum / $count;

// 결과 출력
echo "배열의 평균은: $average";
?>
배열의 평균은: 3

2. 반복문(Loop) 사용하기

반복문을 활용하는 방법은 배열을 직접 순회하면서 각 요소를 더해 합계를 구한 후 평균을 계산합니다. 코드가 다소 길어지지만, 계산 과정을 직접 제어할 수 있어 프로그래밍 기초를 학습하거나 추가 로직을 삽입해야 할 때 유용합니다.

<?php
// 배열 정의
$numbers = [1, 2, 3, 4, 5];

// 합계를 저장할 변수 초기화
$sum = 0;

// 배열 요소의 총 개수
$count = count($numbers);

// 반복문으로 각 요소를 순회하며 합계 계산
foreach ($numbers as $num) {
    $sum += $num; // 각 요소를 합계에 더함
}

// 평균 계산
$average = $sum / $count;

// 결과 출력
echo "배열의 평균은: $average";
?>
배열의 평균은: 3

3. array_reduce() 함수 사용하기

array_reduce() 함수는 배열을 하나의 값으로 축약하는 함수형 프로그래밍 방식입니다. 콜백 함수를 통해 요소들의 합계를 누적한 뒤, 요소 개수로 나누어 평균을 구합니다. 코드가 간결하여 함수형 스타일을 선호하는 개발자에게 적합합니다.

<?php
// 배열 정의
$numbers = [2, 4, 6, 8, 10];

// array_reduce()로 합계 계산
$sum = array_reduce($numbers, function($carry, $item) {
    return $carry + $item;
}, 0);

// 합계를 요소 개수로 나누어 평균 계산
$average = $sum / count($numbers);

// 결과 출력
echo "배열의 평균은: $average";
?>
배열의 평균은: 6

방법별 비교

방법 시간 복잡도 공간 복잡도 적합한 용도
내장 함수 O(n) O(1) 간결하고 가독성 좋은 코드
반복문 O(n) O(1) 기본 원리 학습 및 세부 제어
array_reduce() O(n) O(1) 함수형 프로그래밍 스타일

세 가지 방법 모두 시간 복잡도가 O(n)으로 동일하지만, 코드의 가독성과 유지보수 측면에서 차이가 있습니다.

실무 활용 사례

  • 통계 분석: 데이터셋의 평균값 산출
  • 성적 관리 시스템: 학생들의 평균 성적 계산
  • 금융 애플리케이션: 월평균 지출액 분석
  • 스포츠 데이터 분석: 선수의 평균 경기력 지표 산출

마무리

PHP에서 배열의 평균을 계산할 때는 array_sum()count()를 조합한 내장 함수 방식이 가장 효율적이고 가독성이 뛰어나므로 일반적으로 권장됩니다. 반면 계산 과정에 대한 세밀한 제어가 필요하거나 중간에 추가 로직을 넣어야 한다면 반복문 방식이, 함수형 코딩 스타일을 선호한다면 array_reduce() 방식이 좋은 선택이 될 수 있습니다. 프로젝트의 요구사항과 팀의 코드 컨벤션에 맞는 방법을 선택하세요.