Función bits.Div32() en Golang con ejemplos

El lenguaje Go proporciona soporte incorporado para bits para implementar funciones de conteo y manipulación de bits para los tipos de enteros sin signo predeclarados con la ayuda del paquete de bits. Este paquete proporciona la función Div32() que se usa para encontrar el cociente y el resto de (a, b) dividido por c, es decir, q = (a, b)/c, r = (a, b)%c con el dividendo la mitad superior de los bits en el parámetro a y la mitad inferior en el parámetro b. Esta función entra en pánico si c == 0 (división por cero) o c <= a (desbordamiento del cociente). Para acceder a la función Div32(), debe agregar un paquete matemático/bits en su programa con la ayuda de la palabra clave de importación.

Sintaxis:

func Div32(a, b, c uint32) (q, r uint32)

Parámetros: Esta función toma tres parámetros de tipo uint32, es decir, a, b y c.

Valor devuelto: Esta función devuelve dos valores de tipo uint32, es decir, q y r. Aquí q se conoce como cociente y r como resto.

Ejemplo 1:

// Golang program to illustrate bits.Div32() Function
package main
  
import (
    "fmt"
    "math/bits"
)
  
// Main function
func main() {
  
    // Finding quotient and remainder
    // Using Div32() function
    q, r := bits.Div32(10, 12, 11)
    fmt.Println("Quotient:", q)
    fmt.Println("Remainder:", r)
  
}

Producción:

Quotient: 3904515724
Remainder: 8

Ejemplo 2:

// Golang program to illustrate bits.Div32() Function
  
package main
  
import (
    "fmt"
    "math/bits"
)
  
// Main function
func main() {
  
    // Finding quotient and remainder
    // Using Div32() function
    var a, b, c uint32 = 1, 13, 5
    q, r := bits.Div32(a, b, c)
    fmt.Println("Number 1:", a)
    fmt.Println("Number 2:", b)
    fmt.Println("Number 3:", c)
    fmt.Println("Quotient:", q)
    fmt.Println("Remainder:", r)
  
}

Producción:

Number 1: 1
Number 2: 13
Number 3: 5
Quotient: 858993461
Remainder: 4

Publicación traducida automáticamente

Artículo escrito por Kirti_Mangal 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 *