Как перевести число из десятичной системы в шестнадцатиричную на 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

→ Ссылка