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

PHP gmp_perfect_square() 함수 – GMP 숫자가 완전제곱수인지 판별하기

PHP의 gmp_perfect_square() 함수는 GMP 숫자가 완전제곱수(perfect square)인지 여부를 검사하는 함수입니다. 임의 정밀도 정수를 다룰 때, 어떤 수가 특정 정수의 제곱인지 확인해야 하는 상황에서 유용하게 활용할 수 있습니다.

문법

gmp_perfect_square(val)

매개변수

  • val − 완전제곱수인지 검사할 GMP 숫자입니다. PHP 5.6 이상에서는 GMP 객체를 사용할 수 있으며, 숫자 형태의 문자열도 전달 가능합니다.

반환 값

gmp_perfect_square() 함수는 val이 완전제곱수이면 TRUE를 반환하고, 그렇지 않으면 FALSE를 반환합니다.

예제

다음은 36이 완전제곱수인지 검사하는 예제입니다. 36은 6의 제곱이므로 결과는 true가 됩니다.

<?php
    $val = "36";
    var_dump(gmp_perfect_square($val));
?>

출력 결과

bool(true)

완전제곱수가 아닌 경우

반대로 완전제곱수가 아닌 값을 넣으면 false가 반환됩니다.

<?php
    $val1 = "36";
    $val2 = "37";
    
    var_dump(gmp_perfect_square($val1)); // bool(true)
    var_dump(gmp_perfect_square($val2)); // bool(false)
?>

참고로, 완전제곱수의 실제 제곱근을 구하려면 관련 함수인 gmp_sqrt()를 함께 활용하면 됩니다.