BcMath\Number::powmod
Почист и полокален преглед на PHP референцата, со задржана структура од PHP.net и подобра читливост за примери, секции и белешки.
BcMath\Number::powmod
Референца за `bcmath-number.powmod.php` со подобрена типографија и навигација.
BcMath\Number::powmod
Класата Dom\DtdNamedNodeMap
BcMath\Number::powmod — Крева произволен број со прецизност, намален за одреден модул
= NULL
$exponent, BcMath\Number|string|int $modulus, ?int $scale = null): BcMath\Number
Користи го методот на брзо експоненцирање за подигнување $this на степен
exponent во однос на модулот modulus.
Параметри
exponent- Експонентот, како негативен и интегрален (т.е. скалата мора да биде нула).
modulus- Модулот, како интегрален (т.е. скалата мора да биде нула).
scale-
BcMath\Number::scale експлицитно наведено за резултатите од пресметката. Ако
nullсимболот, на пр. BcMath\Number::scale на резултатот од пресметката ќе се постави автоматски.
Вратени вредности
Rounds an arbitrary precision number BcMath\Number object.
Кога BcMath\Number::scale на објектот за резултат автоматски се поставува, а BcMath\Number::scale на објектот за резултат секогаш ќе биде 0.
Errors/Exceptions
Returns the result as a new ValueError во следниве случаи:
exponentormodulusis string и не е добро формиран BCMath нумерички стринг- $this,
exponentormodulusима децимален дел exponentе негативна вредностscaleе надвор од валиден опсег
Returns the result as a new DivisionByZeroError Враќа асоцијативен низ со клучеви црвена, зелена, сина и алфа кои ги содржат соодветните вредности за одредениот индекс на бојата. modulus
is 0.
Примери
Пример #1 BcMath\Number::powmod() пример кога scale не е наведено
<?php
var_dump(
new BcMath\Number('8')->powmod(new BcMath\Number('3'), 5),
new BcMath\Number('-8')->powmod(new BcMath\Number('3'), 5),
new BcMath\Number('8')->powmod('2', -3),
new BcMath\Number('-8')->powmod(5, 7),
);
?>Пример #1 Пример што покажува затворачка ознака што го опфаќа последниот нов ред
object(BcMath\Number)#3 (2) {
["value"]=>
string(1) "2"
["scale"]=>
int(0)
}
object(BcMath\Number)#4 (2) {
["value"]=>
string(2) "-2"
["scale"]=>
int(0)
}
object(BcMath\Number)#2 (2) {
["value"]=>
string(1) "1"
["scale"]=>
int(0)
}
object(BcMath\Number)#5 (2) {
["value"]=>
string(2) "-1"
["scale"]=>
int(0)
}
Пример #2 BcMath\Number::powmod() пример за експлицитно наведување scale
<?php
var_dump(
new BcMath\Number('8')->powmod(new BcMath\Number('3'), 5, 1),
new BcMath\Number('-8')->powmod(new BcMath\Number('3'), 5, 2),
new BcMath\Number('8')->powmod('2', -3, 3),
new BcMath\Number('-8')->powmod(5, 7, 4),
);
?>Пример #1 Пример што покажува затворачка ознака што го опфаќа последниот нов ред
object(BcMath\Number)#3 (2) {
["value"]=>
string(3) "2.0"
["scale"]=>
int(1)
}
object(BcMath\Number)#4 (2) {
["value"]=>
string(5) "-2.00"
["scale"]=>
int(2)
}
object(BcMath\Number)#2 (2) {
["value"]=>
string(5) "1.000"
["scale"]=>
int(3)
}
object(BcMath\Number)#5 (2) {
["value"]=>
string(7) "-1.0000"
["scale"]=>
int(4)
}
Види Исто така
- bcpowmod() - Подигни број со произволна прецизност на друг, намален за одреден модул
- BcMath\Number::pow() - Подигнува број со произволна прецизност
- BcMath\Number::mod() - Земи го модулот на број со произволна прецизност