KnigaRead.com/

White cat - Справочник по PHP

На нашем сайте KnigaRead.com Вы можете абсолютно бесплатно читать книгу онлайн white cat, "Справочник по PHP" бесплатно, без регистрации.
Перейти на страницу:

bcsqrt


Получение квадратного корня числа произвольной точности.

Синтаксис:

string bcsqrt(string operand [,int scale]);

Возвращает квадратный корень аргумента operand. Параметр scale устанавливает количество цифр после десятичной отметки в результате.


bcsub


Вычитает одно число произвольной точности из другого.

Синтаксис:

string bcsub(string left_operand, right_operand [, int scale]);

Возвращает разность двух переменных, указанных в параметрах функции (left_operand - right_operand) с точностью, указанной в необязательном параметре scale.

Функции GMP


Подразделы



Функции


Введение

Функции этого вида позволяют работать с целыми числами повышенной точности определенного формата используя библиотеку GNU MP.Эта библиотека не входит в стандартный пакет PHP. Загрузить коды библиотеки и документацию по ней можно на сайте http://www.swox.com/gmp/.

Функции, приведенные в этой библиотеке, могут также работать с обычными целочисленными аргументами. В этом случае они будут автоматически преобразовываться в формат GMP. Но для увеличения производительности рекомендуется все же использовать числа формата GMP.

Значения функции GMP


gmp_init


Создает число GMP.

Синтаксис:

resource gmp_init(mixed number)

Число GMP создается из целочисленного или строкового аргумента.

В строке может быть указано число десятеричного или шестнадцатеричного формата. Если это шестнадцатеричный формат, то перед числом должен стоять префикс 0x.

$x = gmp_init(45);

$y = gmp_init("46");

$z = gmp_init("0xfa4b");


Данная функция не обязательна (аргументы автоматически конвертируются в формат GMP), но желательна (при использовании функции gmp_init() повышается быстродействие).


gmp_intval


Преобразование GMP-числа в целое.

Синтаксис:

int gmp_intval(resource gmpnumber)

Эта функция конвертирует GMP-число в целое в том случае, если получаемое число не превышает своего максимально допустимого размера.


gmp_strval


Преобразование GMP-числа в строку.

Синтаксис:

string gmp_strval(resource gmpnumber [, int base])

Функция возвращает число gmpnumber в строковом формате в системе счисления, заданной в необязательном параметре base. По умолчанию возвращает в десятичной системе счисления).

Параметр base может принимать значения от 2 до 36.

$x = gmp_init("0xf1a5");

echo "В десятичной : ".gmp_strval($x);

echo "В base-36: ".gmp_strval($x,36);



gmp_abs


Вычисляет модуль GMP-числа.

Синтаксис:

resource gmp_abs(resourse x)

Возвращает абсолютное значение числа, заданного в параметре x.


gmp_sign


Возвращает знак числа.

Синтаксис:

int gmp_sign(resource x)

Функция gmp_sign() возвратит 1, если x - положительное число, и 0 - если отрицательное.


gmp_neg


Возвращает отрицательное значение числа.

Синтаксис:

recource gmp_neg(resource x)

Возвратит -x.

Арифметика


gmp_add


Сложение двух чисел.

Синтаксис:

recource gmp_add(resource x, recource y)

Функция возвратит GMP-число, равное сумме аргументов x и y.


gmp_sub


Вычитание двух чисел.

Синтаксис:

recource gmp_sub(resource x, recource y)

Функция возвратит GMP-число, равное разности аргументов x и y.


gmp_mul


Умножение двух чисел.

Синтаксис:

recource gmp_mul(resource x, recource y)

Функция возвратит GMP-число, равное произведению аргументов x и y.


gmp_div


Деление двух чисел.

Синтаксис:

recource gmp_div(resource x, recource y [, int round])

Функция возвратит GMP-число, равное делению аргументов x на y. В зависимости от необязательного параметра round, результат деления будет округляться следующим образом:

Эта функция - синоним gmp_div_q().


gmp_div_q


Деление двух чисел.

Синтаксис:

recource gmp_div_q(resource x, recource y [, int round])

Функция возвратит GMP-число, равное делению аргументов x на y. В зависимости от необязательного параметра round, результат деления будет округляться следующим образом:

У этой функции есть синоним - gmp_div().


gmp_div_r


Возвращает остаток от целочисленного деления.

Синтаксис:

recource gmp_div_r(resource x, recource y [, int round])

Функция возвращает остаток от деления x на y. Знак будет наследован от аргумента x.


gmp_div_qr


Производит деление с остатком.

Синтаксис:

array gmp_div_qr(resource x, recource y [, int round])

Данная функция комбинирует в себе действие двух предыдущих функций gmp_div_q() и gmp_div_r(). Она возвращает массив, состоящий из двух элементов:

$x=gmp_init("0xf3c3b5");

$result=gmp_div_qr($x, "0xb1");

echo "Целое: ".gmp[strval($result[0]);

echo "Остаток: ".gmp[strval($result[1]);



gmp_mod


Возвращает модуль остатка деления.

Синтаксис:

resource gmp_mod(resource x, recource y)

Данная функция эквивалентна gmp_div_r(), за исключением того, что она возвращает абсолютное значение.


gmp_divexact


Производит безостаточное деление.

Синтаксис:

resource gmp_divexact(resource x, recource y)

Данная функция использует алгоритм "точного" деления. Результат будет достоверным, только если x будет нацело делим y.


gmp_cmp


Производит сравнение двух чисел.

Синтаксис:

int gmp_cmp(resource x, recource y)

Функция возвратит положительное значение, если x y; ноль, елси x = y; отрицательное значени, если x < y.

Математика


gmp_fact


Вычисляет факториал.

Синтаксис:

resource gmp_fact(resourse x)

Возвращает факториал числа, заданного в параметре x.


gmp_sqrt


Вычисляет квадратный корень.

Синтаксис:

resource gmp_sqrt(resourse x)

Возвращает квадратный корень числа, заданного в параметре x.


gmp_sqrtrm


Вычисляет квадратный корень с остатком.

Синтаксис:

array gmp_sqrtrm(resourse x)

Данная функция возвращает массив, в котором элемент с индексом [0] - это квадратный корень аргумента, элемент с индексом [1] - разность между аргументом и элементом [0] в квадрате.


gmp_perfect_square


Определяет, является ли число полным квадратом.

Синтаксис:

bool gmp_perfect_square(resourse x)

Функция gmp_perfect_square() возвратит true, если x является квадратом целого числа. В противном случае вернет false.


gmp_pow


Возведение в степень.

Синтаксис:

resource gmp_pow(resourse x, int y)

Эта функция возвращает результат, равный возведения аргумента x в степень y, при условии, что y не отрицательный.

echo gmp_pow(2,3); // Выведет 8

echo gmp_pow(0,0); // Выведет 1



gmp_powm



gmp_prob_prime


Проверка "вероятно" простого числа.

Синтаксис:

int gmp_prob_prime(resourse x [, int reps])

Эта функция возвратит 0, в случае если x сложное число, т.е. имеющее более двух целых делителей. Возвратит 1, если x, возможно, простое число. Если возвращает 2, то тогда x - наверняка простое число.

Аргумент reps определяет качество проверки. Чем большее это число, тем точнее результат. Может принимать значения от 5 до 10 (по умолчанию).

Эта функция использует алгоритм вероятностного теста Миллера-Рабина.


gmp_gcd


Находит наибольший общий делитель.

Синтаксис:

resource gmp_gcd(resourse x, resource y)

Всегда возвращает положительный результат.


gmp_gcdext


Нахождение наибольшего общего делителя со множителями.

Синтаксис:

array gmp_gcdext(resourse x, resource y)

Функция gmp_gcdext() возвращает массив со значениями g,s,t, такими, что x*s+y*t=g=НОД(x,y), гдн НОД - наибольший общий делитель.


gmp_invert


Производит инверсию по модулю.

Синтаксис:

resource gmp_invert(resourse x, resource y)

Функция возвращает дополнение x до значения, делящегося нацело на y. В случае, если результат не может быть найден, возвращает false.


gmp_legendre


Возвращает число Легранжа.

Синтаксис:

Перейти на страницу:
Прокомментировать
Подтвердите что вы не робот:*