Как перевести число из десятичной системы в шестнадцатиричную на Golang?
Недавно, в ходе реализации одного алгоритма на Golang, нужно было реализовать перевод числа из десятичной системы счисления в шестнадцатиричную. Подскажите, как это возможно сделать на golang без использования сторонних библиотек? Просто в пакете strconv я не нашел ничего, что могло бы удовлетворить моим условиям. Заранее спасибо :)
Ответы (2 шт):
Автор решения: Эникейщик
→ Ссылка
import "fmt"
func main() {
var num int = 2748
fmt.Printf("Hex: %x\n", num) // abc
fmt.Printf("Hex: %X\n", num) // ABC
}
Автор решения: Pak Uula
→ Ссылка
Пожалуйста, озвучте ваши условия. Почему вам не подошли функции strconv.FromatInt(i int64, base int) string и func FormatUint(i uint64, base int) string?
https://go.dev/play/p/UbAVYlZAbtT
package main
import (
"fmt"
"strconv"
)
func main() {
x := int64(12345678)
x_hex := strconv.FormatInt(x, 16)
fmt.Println(x_hex)
}
Результат bc614e