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

PHP로 처음 n개의 자연수의 5제곱 합 구하기 – 예제 코드와 공식 정리

이 글에서는 PHP를 사용하여 처음 n개의 자연수 각각의 5제곱 값을 모두 더한 합계를 구하는 방법을 알아봅니다. 반복문을 활용한 기본적인 구현 예제와 함께 실행 결과, 그리고 수학적 공식까지 함께 살펴보겠습니다.

구현 예제

<?php
function sum_of_fifth_pow($val)
{
    $init_sum = 0;
    for ($i = 1; $i <= $val; $i++)
        $init_sum = $init_sum + ($i * $i * $i * $i * $i);
    return $init_sum;
}
$val = 89;
print_r("처음 n개의 자연수의 5제곱 합은 ");
echo(sum_of_fifth_pow($val));
?>

실행 결과

처음 n개의 자연수의 5제곱 합은 85648386825

코드 동작 원리

위 코드에서는 sum_of_fifth_pow라는 이름의 함수를 정의하고, 함수 내부에 초기 합계값 $init_sum을 0으로 설정합니다. 이후 for 반복문을 사용하여 1부터 입력받은 값 $val까지의 각 자연수를 순회하면서 해당 수의 5제곱($i * $i * $i * $i * $i)을 계산하고, 그 결과를 누적 합계에 더해줍니다.

함수 외부에서는 계산 대상이 될 값(예제에서는 89)을 정의한 뒤, 이 값을 매개변수로 전달하며 함수를 호출합니다. 최종적으로 연산된 결과가 콘솔 화면에 출력됩니다.

참고: 수학적 공식 활용하기

반복문 없이도 다음과 같은 공식을 사용하면 한 번의 연산으로 결과를 얻을 수 있어, n이 클 경우 성능 면에서 훨씬 유리합니다.

합 = n²(n+1)²(2n² + 2n − 1) / 12

예를 들어 n = 89를 공식에 대입하면 위 예제 코드와 동일한 결과인 85648386825를 얻을 수 있습니다. 단순 반복문 방식은 로직을 이해하기 쉽다는 장점이 있고, 공식 기반 방식은 계산 속도가 빠르다는 장점이 있으므로 상황에 맞게 선택하여 사용하면 됩니다.