bcpow

(PHP 4, PHP 5, PHP 7, PHP 8)

bcpow Effettua l'elevamento a potenza

Descrizione

bcpow(string $x, string $y, int $precisione = ?): string

Eleva x alla potenza y. Il parametro opzionale precisione può essere usato per impostare il numero di cifre dopo il punto decimale nel risultato.

Esempi

Example #1 bcpow() example

<?php

echo bcpow(4.2, 3, 2); // 74.08

?>

Vedere anche:

bcpowmod() e bcsqrt().

add a note

User Contributed Notes 3 notes

up
-1
thomas at tgohome dot com
16 years ago
<?php

bcscale(100);

/*
 * Computes the natural logarithm using a series.
 * @author Thomas Oldbury.
 * @license Public domain.
 */
function bcln($a, $iter = 10)
{
    $result = "0.0";
    
    for($i = 0; $i < $iter; $i++)
    {
        $pow = (1 + (2 * $i));
        $mul = bcdiv("1.0", $pow);
        $fraction = bcmul($mul, bcpow(bcsub($a, "1.0") / bcadd($a, "1.0"), $pow));
        $result = bcadd($fraction, $result);
    }
    
    return bcmul("2.0", $result);
}

/*
 * Computes the base2 log using baseN log.
 * @note Requires above functions.
 * @author Thomas Oldbury.
 * @license Public domain.
 */
function bclog2($a, $iter = 10)
{
    return bcdiv(bcln($a, $iter), bcln("2", $iter));
}

/*
 * Computes the base10 log using baseN log.
 * @note Requires above functions.
 * @author Thomas Oldbury.
 * @license Public domain.
 */
function bclog10($a, $iter = 10)
{
    return bcdiv(bcln($a, $iter), bcln("10", $iter));
}


?>
up
-2
Anonymous
20 years ago
Well, if bcpow has limits, then this should work:<?phpfunction bcpow_($num, $power) {    $awnser = "1";    while ($power) {        $awnser = bcmul($awnser, $num, 100);        $power = bcsub($power, "1");    }    return rtrim($awnser, '0.');}?>Just that $power cannot have decimal digits in it.
up
-2
Michael Bailey (jinxidoru at byu dot net)
21 years ago
bcpow() only supports exponents less than or equal to 2^31-1.  Also, bcpow() does not support decimal numbers.  If you have scale set to 0, then the exponent is converted to an interger; otherwise an error is generated.--Michael Baileyhttp://www.jinxidoru.com
To Top