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

PHP bcsqrt() 함수 완벽 가이드: 임의 정밀도 숫자의 제곱근 구하기

PHP에서 bcsqrt() 함수는 임의 정밀도(arbitrary precision) 숫자의 제곱근을 계산하는 데 사용됩니다. 이 함수는 숫자를 문자열 형태로 받아들이며, 결과를 지정된 소수점 자릿수(정밀도)에 맞춰 반올림한 후 제곱근 값을 반환합니다.

문법

string bcsqrt($num_string, $scale)

매개변수

bcsqrt() 함수는 두 개의 매개변수를 받습니다: $num_string$scale.

  • $num_string − 제곱근을 구할 대상 숫자를 나타냅니다. 문자열 타입의 매개변수입니다.

  • $scale − 출력 결과에서 소수점 이하로 표시될 자릿수를 지정합니다. 선택적 매개변수이며, 지정하지 않으면 기본값이 적용됩니다.

반환 값

bcsqrt() 함수는 해당 숫자의 제곱근을 문자열 형태로 반환합니다.

예제 1

<?php
   // 임의 정밀도 입력 숫자
   $num_string = "22";

   // 아래 bcsqrt 함수가 제곱근을 계산합니다
   $result = bcsqrt($num_string);
   echo "scale 값 없이 출력: ", $result;
?>

출력

scale 값 없이 출력: 4

예제 2

<?php
   // 임의 정밀도 입력 숫자
   $num_string = "22";

   // scale 값 3 지정
   $scale = "3";

   // 아래 bcsqrt 함수가 제곱근을 계산합니다
   $result = bcsqrt($num_string, $scale);
   echo "scale 값 지정 후 출력: ", $result;
?>

출력

scale 값 지정 후 출력: 4.690

정리

위 예제에서 볼 수 있듯이, scale 값을 지정하지 않으면 제곱근의 정수 부분만 반환되지만, scale 값을 지정하면 소수점 이하 원하는 자릿수까지 정확한 결과를 얻을 수 있습니다. 예를 들어 22의 제곱근은 약 4.69041576...이며, scale 값 3을 지정하면 소수점 셋째 자리까지 반올림된 4.690이 반환됩니다. 이처럼 bcsqrt() 함수는 일반 float 연산으로는 표현할 수 없는 높은 정밀도의 수학적 계산이 필요할 때 매우 유용합니다.