Monday, September 23, 2024
Google search engine
HomeLanguagesPHP | gmp_scan1() Function

PHP | gmp_scan1() Function

The gmp_scan1() is an inbuilt function which is used to scan “1” in the GMP number(GNU Multiple Precision : For large numbers) starting from given index which move towards most significant bits in the number.

Syntax:

gmp_scan1($num, $index)

Parameters: This function accepts two parameters as explained below:

  • $num: This parameter is a GMP number and is mandatory to be passed. This parameter can be a GMP object in PHP version 5.6 and later, or we are also allowed to pass a numeric string provided that it is possible to convert that string to a number.
  • $index: This parameter represents the index or position in the bitwise representation of the number $num from where we want to start the search.

Return Value: The function returns the position where we find “1” in the number.

Examples:

Input : gmp_scan1("101111101", 6)
Output : 8

Input : gmp_scan1("111001111", 2)
Output : 3

Below programs illustrate the gmp_scan1() function in PHP:

Program 1: Program to find the position of “1” bit in GMP number when numeric strings as GMP numbers are passed as arguments.




<?php
  
// PHP program to find position of "1" bit in GMP
// number passed as arguments
  
// strings as GMP numbers
$num = "10110001";
$pos = 2;
  
  
echo gmp_scan1($num, $pos) . "\n";
  
?>


Output:

4

Program 2: Program to find the position of “1” bit in GMP number when GMP numbers are passed as arguments.




<?php
// PHP program to find position of "1" bit in GMP
// number
  
//creating GMP numbers using gmp_init()
$num = gmp_init(10001111101);
$pos = 2;
  
echo gmp_scan1($num, $pos) . "\n";
  
?>


Output:

3

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

Whether you’re preparing for your first job interview or aiming to upskill in this ever-evolving tech landscape, neveropen Courses are your key to success. We provide top-quality content at affordable prices, all geared towards accelerating your growth in a time-bound manner. Join the millions we’ve already empowered, and we’re here to do the same for you. Don’t miss out – check it out now!

RELATED ARTICLES

Most Popular

Recent Comments