PHP에서 숫자의 평균 계산

Olorunfemi Akinlua 2023년1월30일
  1. 특정 숫자 집합에 array_sum()count() 사용
  2. 연속 숫자 집합에 while 루프 사용
PHP에서 숫자의 평균 계산

PHP로 코딩할 때 수행해야 하는 다양한 수학적 연산이 발생합니다. 덧셈, 뺄셈, 곱셈, 나눗셈은 기본입니다.

일반적인 것은 평균이라고도 하는 평균입니다. 이 기사에서는 PHP 내장 함수를 사용하여 알려진 숫자 집합과 연속 숫자 집합의 평균을 계산하는 방법을 고려합니다.

특정 숫자 집합에 array_sum()count() 사용

평균의 간단한 공식은 숫자의 합을 숫자의 빈도(개수)로 나눈 것입니다. 따라서 1, 3, 4, 5, 6의 평균을 찾기 위해 1+3+4+5+6을 더하면 19가 되고 19를 숫자 빈도 5로 나누면 평균이 됩니다. 3.8이 되십시오.

코드 - PHP:

<?php
    $sum = 1 + 3 + 4 + 5 + 6;
    $frequency = 5;

    $average = $sum/$frequency;
?>

그러나 이것은 숫자의 빈도를 쉽게 셀 수 있을 때 오히려 간단합니다. 따라서 array_sum()count()와 같은 함수가 필요합니다.

이 두 가지 내장 함수를 사용하면 배열이 정수 및 부동 소수점과 같은 요소 시퀀스를 저장하는 데 더 나은 데이터 구조이기 때문에 배열 내 숫자의 합을 쉽게 계산할 수 있습니다.

배열에 같은 숫자를 저장하고 평균을 계산해 봅시다.

암호:

<?php
   $numbers = [1, 3, 4, 5, 6];

   $average =  array_sum($numbers)/count($numbers);
   print_r($average);
?>

출력:

3.8

임의의 숫자를 자동 생성하는 고급 기능을 좀 더 발전시켜 보겠습니다.

<?php
     $numbers = array_map(function () {
       return rand(0, 100);
   }, array_fill(0, 193, null));

   $average =  array_sum($numbers)/count($numbers);
   print_r($average);
?>

출력:

49.331606217617

배열 내의 숫자가 무작위로 생성되기 때문에 출력이 우리와 다를 것입니다.

연속 숫자 집합에 while 루프 사용

이전 예에서는 알려진 숫자 목록을 포함합니다. 그러나 교육 대시보드용 PHP 애플리케이션과 같이 이동하면서 평균을 계산해야 하는 경우가 있습니다.

학생이 해당 경로에 있는 동안 매주 평균을 계산하려고 한다고 가정합니다. while 루프를 사용하여 지속적으로 숫자를 요청하고 모든 간격에서 숫자를 계산할 수 있습니다.

이 예에서는 readline() 함수와 일반적인 array_sum()count() 함수를 사용합니다. 또한 다음 셸 문을 통해 대화형 PHP 셸을 사용합니다.

php main.php

코드 - main.php:

<?php

$temp = [];

echo "\nAdding numbers repeatedly to get the average at each intervals";
echo "\nIf you want to terminate the program, type 000";

while (True) {
  echo "\n\n";
  $a = (float)readline("Enter a number: ");
  if ($a != 000) {
    array_push($temp, $a);
    $average = array_sum($temp)/count($temp);
    echo "Current average is ". $average;
    echo "\n";
  } else {
    break;
  }
}

$frequency = count($temp);

echo "\nAverage of all the numbers ($frequency) is $average.";

?>

$temp 배열은 사용자가 입력할 숫자를 보유합니다. while 루프를 사용하면 중단 조건, 즉 0(0)이 충족되지 않는 한 계속해서 새 숫자를 계속 요청할 수 있습니다.

아래 코드는 readline() 함수를 통해 사용자의 입력을 만들고 부동 소수점 수신을 보장합니다.

$a = (float)readline("Enter a number: ");

다음 명령은 정수를 받습니다.

$a = (int)readline("Enter a number: ");

array_push() 함수를 사용하여 $temp 배열에 사용자 번호를 추가합니다. 이후에는 앞에서와 같이 array_sum(), count() 함수를 이용하여 평균을 구합니다.

완료되면 0을 입력하여 break 문을 시작하는 프로그램을 종료할 수 있습니다. 마지막으로 모든 사용자가 입력한 숫자의 평균을 출력합니다.

$frequency = count($temp);

echo "\nAverage of all the numbers ($frequency) is $average.";

대화형 셸 출력:

> php main.php

Adding numbers repeatedly to get the average at each interval
If you want to terminate the program, type 0

Enter a number: 11

Current average is 1


Enter a number: 3

Current average is 2


Enter a number: 6

Current average is 3.3333333333333


Enter a number: 88

Current average is 4.5


Enter a number: 1010

Current average is 5.6


Enter a number: 0

Average of all the numbers (5) is 5.6.
Olorunfemi Akinlua avatar Olorunfemi Akinlua avatar

Olorunfemi is a lover of technology and computers. In addition, I write technology and coding content for developers and hobbyists. When not working, I learn to design, among other things.

LinkedIn