15 Jun 2024C++ / Python / TypeScriptEasy

Convert a Number to Hexadecimal

Collected C++, Python, TypeScript solutions for convert a number to hexadecimal. Add a dedicated write-up later if you want deeper notes.

auto-generated entry for Convert a Number to Hexadecimal. the solution files are available below.

solution files

  • C++ convert-a-number-to-hexadecimal/synced-solution.cpp
  • Python convert-a-number-to-hexadecimal/synced-solution.py
  • TypeScript convert-a-number-to-hexadecimal/synced-solution.ts

Solution files

Pythonconvert-a-number-to-hexadecimal/synced-solution.py
def toHex(num):
    if num == class="syntax-number">0:
        return class="syntax-string">"class="syntax-number">0"

    hex_chars = class="syntax-string">"0123456789abcdef"
    result = class="syntax-string">""

    class=class="syntax-string">"syntax-comment"># Handle negative numbers using class="syntax-number">32-bit representation
    if num < class="syntax-number">0:
        num = (class="syntax-number">1 << class="syntax-number">32) + num

    while num:
        result = hex_chars[num % class="syntax-number">16] + result
        num class=class="syntax-string">"syntax-comment">//= class="syntax-number">16

    return result
C++convert-a-number-to-hexadecimal/synced-solution.cpp
class Solution {
public:
    string toHex(int num) {
        if (num == class="syntax-number">0) return class="syntax-string">"class="syntax-number">0";

        string hex_chars = class="syntax-string">"0123456789abcdef";
        string result = class="syntax-string">"";

        unsigned int n = (unsigned int)num;

        while (n) {
            result = hex_chars[n % class="syntax-number">16] + result;
            n /= class="syntax-number">16;
        }

        return result;
    }
};
TypeScriptconvert-a-number-to-hexadecimal/synced-solution.ts
function toHex(num: number): string {
    if (num === class="syntax-number">0) return class="syntax-string">"class="syntax-number">0";

    const hexChars = class="syntax-string">"0123456789abcdef";
    let result = class="syntax-string">"";

    const n = num >>> class="syntax-number">0;
    let temp = n;

    while (temp) {
        result = hexChars[temp % class="syntax-number">16] + result;
        temp = Math.floor(temp / class="syntax-number">16);
    }

    return result;
}