(PHP 8 >= 8.4.0)
BcMath\Number::sqrt — Devuelve la raíz cuadrada de un número de precisión arbitraria
Devuelve la raíz cuadrada de $this.
scale
null
, el BcMath\Number::scale del resultado del cálculo será definido automáticamente.
Devuelve la raíz cuadrada en forma de un nuevo objeto BcMath\Number.
Cuando el BcMath\Number::scale del resultado se define automáticamente,
el BcMath\Number::scale de $this es utilizado. Sin embargo, en casos
tales como la división indivisible, el BcMath\Number::scale del resultado se extiende.
La expansión se realiza únicamente si es necesario, hasta un máximo de +10
.
Este comportamiento es similar al de BcMath\Number::div(), consulte esto para más detalles.
Es decir, si el BcMath\Number::scale de este objeto es 5
,
el BcMath\Number::scale del resultado está entre 5
y
15
.
Este método lanza una ValueError en los siguientes casos:
scale
está fuera del rango válidoEjemplo #1 Ejemplo de BcMath\Number::sqrt()
<?php
var_dump(
new BcMath\Number('2')->sqrt(),
new BcMath\Number('2')->sqrt(3),
new BcMath\Number('4')->sqrt(),
new BcMath\Number('4')->sqrt(3),
);
?>
El resultado del ejemplo sería:
object(BcMath\Number)#2 (2) { ["value"]=> string(12) "1.4142135623" ["scale"]=> int(10) } object(BcMath\Number)#3 (2) { ["value"]=> string(5) "1.414" ["scale"]=> int(3) } object(BcMath\Number)#4 (2) { ["value"]=> string(1) "2" ["scale"]=> int(0) } object(BcMath\Number)#5 (2) { ["value"]=> string(5) "2.000" ["scale"]=> int(3) }