Hoy veremos cómo convertir un número en su representación binaria a un entero. Y un entero a su representación binaria. Es decir, convertir algo como “10” en binario a 2 en decimal; así como 2 en decimal a “10” en binario.
Para esto simplemente llamamos a FormatInt del tipo strconv. Esto nos dará la representación binaria como una cadena. El número que le pasemos debe ser un int64, y para convertirlo podemos usar la función int64.
Aquí dejo algunos ejemplos:
package main
import (
"strconv"
"fmt"
)
func main(){
numero := int64(85)
otroNumero := int64(20)
numeroFinal := int64(64)
fmt.Printf("El número %d en binario es '%s'\n", numero, strconv.FormatInt(numero, 2))
fmt.Printf("El número %d en binario es '%s'\n", otroNumero, strconv.FormatInt(otroNumero, 2))
fmt.Printf("El número %d en binario es '%s'\n", numeroFinal, strconv.FormatInt(numeroFinal, 2))
}
La salida es esta:
Ahora veamos la operación inversa. Convertiremos un número en su representación binaria a un número decimal. En este caso usamos ParseInt del tipo strconv. El primer argumento que recibe es el dato que convertiremos (la representación binaria), después la base (2) y finalmente el tamaño que será 64.
Recordemos que puede devolver un error en la conversión, así que debemos manejarlo. El código de ejemplo queda así:
package main
import (
"strconv"
"fmt"
)
func main(){
binario := "1010101"
entero, error := strconv.ParseInt(binario, 2, 64)
if error != nil {
fmt.Println("Error al convertir: ", error)
}else{
fmt.Printf("El número binario '%s' es %d en su representación decimal", binario, entero)
}
}
Al ejecutarlo, esto se ve:
En este post te quiero compartir un código de C++ para listar y cancelar trabajos…
Gracias a WebAssembly podemos ejecutar código de otros lenguajes de programación desde el navegador web…
Revisando y buscando maneras de imprimir un PDF desde la línea de comandos me encontré…
Esta semana estuve recreando la API del plugin para impresoras térmicas en Android (HTTP a…
Hoy te enseñaré a extraer la cadena base64 de una clave PEM usando una función…
Encender un foco con un Bot de Telegram es posible usando una tarjeta como la…
Esta web usa cookies.
Ver comentarios