Рубрики

PHP | Функция gmp_sign ()

Gmp_sign () — это встроенная функция в PHP, которая проверяет знак заданного номера GMP ( GNU Multiple Precision : для больших чисел).

Синтаксис:

gmp_sign($num)

Параметры: эта функция принимает один номер GMP $ num в качестве обязательного параметра, показанного в приведенном выше синтаксисе. Этот параметр может быть объектом GMP в версии PHP 5.6 и выше, или нам также разрешено передавать числовую строку при условии, что можно преобразовать эту строку в число.

Возвращаемое значение: функция проверяет знак заданного числа $ num и возвращает три значения в зависимости от числа, как описано ниже:

  • Возвращает 1 — $ num положительно
  • Возвращает -1 — $ num отрицательно
  • Возвращает 0 — $ num равно нулю

Примеры:

Input : $num=9
Output : 1 

Input : $num=-8
Output : -1 

Input : $num=0
Output : 0 

Ниже программы иллюстрируют функцию gmp_sign ():

Программа 1: Программа ниже демонстрирует работу функции gmp_sign (), когда в качестве аргумента передается номер GMP.

<?php
// PHP программа для проверки знака
// числа

  
// Аргументы GMP
// отрицательный

$num1 = gmp_init("-101", 2);

  
// положительный

$num2 = gmp_init("1010", 2); 

  
// нуль

$num3 = gmp_init("0", 2); 

  

  
// печатает -1 как отрицательный

echo gmp_sign($num1)."\n"

  
// печатает +1 как отрицательный

echo gmp_sign($num2)."\n";  

  
// печатает 0 как 0

echo gmp_sign($num3)."\n"

  
?>

Выход:

-1
1
0

Программа 2: Программа ниже демонстрирует работу gmp_sign (), когда числовая строка передается в качестве аргумента.

<?php
// PHP программа для проверки знака
// числа

  
// числовые аргументы

  
// отрицательный

$num1 = -9;

  
// положительный

$num2 = 8;

  
// нуль

$num3 = 0;

  

  
// печатает -1 как отрицательный

echo gmp_sign($num1)."\n"

  
// печатает +1 как отрицательный

echo gmp_sign($num2)."\n";  

  
// печатает 0 как 0

echo gmp_sign($num3)."\n"

  
?>

Выход:

-1
1
0

Ссылка:
http://php.net/manual/en/function.gmp-sign.php

Рекомендуемые посты:

PHP | Функция gmp_sign ()

0.00 (0%) 0 votes