PHP | Función gmp_scan1()

gmp_scan1() es una función incorporada que se utiliza para escanear «1» en el número GMP ( precisión múltiple GNU: para números grandes ) a partir del índice dado que se mueve hacia los bits más significativos en el número.

Sintaxis:

gmp_scan1($num, $index)

Parámetros: Esta función acepta dos parámetros como se explica a continuación:

  • $num : este parámetro es un número GMP y es obligatorio pasarlo. Este parámetro puede ser un objeto GMP en PHP versión 5.6 y posteriores, o también se nos permite pasar una string numérica siempre que sea posible convertir esa string en un número.
  • $index : Este parámetro representa el índice o posición en la representación bit a bit del número $num desde donde queremos iniciar la búsqueda.

Valor devuelto: La función devuelve la posición donde encontramos «1» en el número.

Ejemplos:

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

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

Los siguientes programas ilustran la función gmp_scan1() en PHP:

Programa 1: programa para encontrar la posición del bit «1» en el número GMP cuando se pasan strings numéricas como números GMP como argumentos.

<?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";
  
?>

Producción:

4

Programa 2: programa para encontrar la posición del bit «1» en el número GMP cuando los números GMP se pasan como argumentos.

<?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";
  
?>

Producción:

3

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

Publicación traducida automáticamente

Artículo escrito por akash1295 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *