PHP에서 bcpow() 함수는 임의 정밀도(arbitrary precision)의 밑(base) 숫자를 지정한 지수(exponent)만큼 거듭제곱하는 데 사용됩니다. 이 함수는 두 개의 임의 정밀도 숫자를 문자열 형태로 받아, 결과를 지정된 정밀도(scale)에 맞춰 반올림한 후 밑 숫자의 거듭제곱 값을 반환합니다.
문법(Syntax)
String bcpow($base, $exponent, $scale)
매개변수(Parameters)
PHP의 bcpow() 함수는 세 가지 매개변수를 받습니다: $base, $exponent, $scale.
$base - 거듭제곱의 밑이 되는 숫자를 나타내며, 문자열(string) 타입의 매개변수입니다.
$exponent - 지수 값을 나타내며, 역시 문자열(string) 타입의 매개변수입니다.
$scale - 거듭제곱 연산 결과에서 소수점 이하로 표시할 자릿수를 지정합니다. 기본값은 0이며, 정수(integer) 타입의 매개변수입니다.
반환값(Return Value)
bcpow() 함수는 (밑)지수 의 계산 결과를 반환합니다.
예제 1 - scale 매개변수 없이 bcpow() 함수 사용하기
<?php
// 밑과 지수 값 입력
$base = "5";
$exponent = "7";
// scale 값 없이
// 거듭제곱 값 계산
$result = bcpow($base, $exponent);
// 결과 출력
echo "The output is: ", $result;
?>
출력 결과
The output is: 78125
예제 2 - scale 매개변수를 사용하여 bcpow() 함수 실행하기
이번에는 동일한 입력 값에 scale 값을 3으로 설정하여 출력 결과가 어떻게 달라지는지 확인해 보겠습니다.
<?php
// 밑과 지수 값 입력
$base = "2";
$exponent = "3";
// scale 값 3으로 설정
$scaleval = 3;
// scale 값을 적용하여
// 거듭제곱 값 계산
$result = bcpow($base, $exponent, $scaleval);
// 결과 출력
echo "Output with scale value: ", $result;
?>
출력 결과
Output with scale value: 8.000
위 예제에서 볼 수 있듯이, scale 매개변수를 지정하면 소수점 이하 세 자리까지 결과가 표시되는 것을 확인할 수 있습니다. 큰 숫자나 높은 정밀도가 필요한 금융·과학 계산에서 bcpow() 함수는 부동소수점 오차 없이 정확한 거듭제곱 연산을 보장해 줍니다.