Open In App

PHP | gmp_div_qr() Function

Last Updated : 14 May, 2018
Improve
Improve
Like Article
Like
Save
Share
Report


The gmp_div_qr() function is an in-built function in PHP which performs the division operation between two GMP numbers (GNU Multiple Precision : For large numbers) and returns the quotient and remainder.
Syntax :

gmp_div_qr($num1, $num2)

Parameters : This function accepts two GMP numbers, $num1 and $num2 as mandatory parameters as shown in the above syntax. These parameters can be GMP objects in PHP version 5.6 and later, or numeric strings can be passed to the function provided that it is possible to convert those strings to numbers.

Return Value : This function returns an array with two components :

  • First being the quotient of the division.
  • Second being the remainder of the division.

Examples:

Input : $num1 = 146, $num2  = 12
Output : Quotient = 12, Remainder = 2
          Array ( [0] => GMP Object ( [num] => 12 ) [1] => GMP Object ( [num] => 2 ) )

Input : $num1 = 189126457831, $num2  = 12098123409
Output : Quotient = 15, Remainder = 7654606696
          Array ( [0] => GMP Object ( [num] => 15) [1] => GMP Object ( [num] => 7654606696 ) )

Below programs will illustrate the use of gmp_div_qr() function.

Program 1 : Program to perform the division of GMP numbers when GMP numbers are passed as arguments.




<?php
// PHP program to perform the division of
// GMP numbers
   
// creating GMP numbers using gmp_init()
$num1 = gmp_init(257);
$num2 = gmp_init(17);
  
// calculates the quotient and remainder
//  when $num1 is divided by num2
  
$res = gmp_div_qr($num1, $num2);
// Printing the Array elements, i.e.
// the quotient and remainder
print_r($res);
?>


Output

Array 
( 
[0] => GMP Object ( [num] => 15 ) 
[1] => GMP Object ( [num] => 2 ) 
)

Program 2 : Program to perform the division of GMP numbers when numeric strings as GMP numbers are passed as arguments.




<?php
// PHP program to perform the division of
// GMP numbers
   
// creating GMP number using gmp_init(
$a = gmp_init("7891267541121");
  
// calculates the quotient when
// $a is divided by 115789034
$res = gmp_div_qr($a, "115789034");
  
// Printing the Array elements, i.e.
// the quotient and remainder
print_r($res);
?>


Output

Array ( 
[0] => GMP Object ( [num] => 68152 ) 
[1] => GMP Object ( [num] => 13295953 ) 
)

Reference : http://php.net/manual/en/function.gmp-div-qr.php



Like Article
Suggest improvement
Previous
Next
Share your thoughts in the comments

Similar Reads