Эта функция конвертирует 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 (по умолчанию).
Эта функция использует алгоритм вероятностного теста Миллера-Рабина.