PHP
 Computer >> コンピューター >  >> プログラミング >> PHP

PHPのgmp_root()関数 – GMP数のn乗根の整数部分を取得する

PHPのgmp_root()関数は、GMP数(多倍長整数)のn乗根を計算し、その整数部分を取得するための関数です。たとえば、ある数の立方根や4乗根などを求めた際に、小数点以下を切り捨てた整数値だけを取り出したい場合に便利です。

構文

gmp_root(GMP|string|int $num, int $nth): GMP

パラメータ

  • num(X): n乗根を求めたい対象となるGMP数。GMPオブジェクトのほか、数値や文字列も指定できます。
  • nth: 根の次数を表す正の整数。2を指定すれば平方根、3を指定すれば立方根の整数部分が返されます。

戻り値

gmp_root()関数は、指定したGMP数のn乗根のうち、小数点以下を切り捨てた整数部分をGMP数として返します。

使用例

次の例では、9の3乗根の整数部分を求めています。

<?php
    $x = "9";
    $n = 3;
    $res = gmp_root($x, $n);
    echo $res;
?>

出力

上記のコードを実行すると、次のような結果が表示されます。

2

解説

9の3乗根は約2.0801ですが、gmp_root()関数は小数点以下を切り捨てた「2」を返します。この関数を使えば、大きな整数に対しても高精度にn乗根の整数部分を計算できるため、暗号処理や数学的な計算などで活用できます。なお、切り捨てではなく四捨五入した結果が必要な場合は、gmp_rootrem()関数やgmp_powm()関数など、用途に応じた他のGMP関数の利用も検討するとよいでしょう。

  1. PHPのlog()関数とは?自然対数の計算方法と使い方を解説

    定義と使い方log() 関数は、数値の自然対数(natural logarithm)を計算します。対数とは、指数関数の逆演算のことです。たとえば 102=100 という関係は「log10100=2」と表せます。自然対数はオイラー数 e を底として計算され、PHP では定義済み定数 M_E によって e の値(2.7182818284590452354)が提供されています。具体例を挙げると、exp(4.60517018599)=100(つまり e4.60517018599=100)が成り立つため、loge100=4.60517018599 となります。PHP では、この自然対数(loge)を l

  2. PHPのgmp_rootrem()関数とは?構文・パラメータ・使用例をわかりやすく解説

    gmp_rootrem()関数は、GMP数値のn乗根を計算するためのPHP関数です。計算結果のうち、n乗根の整数部分と余りを配列として返します。 構文 gmp_rootrem($n, $root) パラメータ n − n乗根を求めたい対象の数値です。PHP 5.6以降ではGMPオブジェクトを指定できます。数値文字列も使用可能です。 root − 求めるn乗根の次数(何乗根にするかを表す正の整数)です。 戻り値 gmp_rootrem()関数は、2つの要素を持つ配列を返します。 インデックス [0]: n乗根の整数部分(GMPオブジェクト) インデックス [1]: 余り(GMPオブジェクト