以下代码使用 Python 实现将 10 进制数据转换为 2 进制、8 进制或 16 进制数据,不使用任何 Python 内置函数:

# 将 10 进制数据转换成 2 进制数据
def decimal_to_binary(decimal_num):
    binary_num = ""
    while decimal_num > 0:
        binary_num = str(decimal_num % 2) + binary_num
        decimal_num //= 2
    return binary_num

# 将 10 进制数据转换成 8 进制数据
def decimal_to_octal(decimal_num):
    octal_num = ""
    while decimal_num > 0:
        octal_num = str(decimal_num % 8) + octal_num
        decimal_num //= 8
    return octal_num

# 将 10 进制数据转换成 16 进制数据
def decimal_to_hex(decimal_num):
    hex_num = ""
    while decimal_num > 0:
        remainder = decimal_num % 16
        if remainder < 10:
            hex_num = str(remainder) + hex_num
        else:
            hex_num = chr(remainder + 55) + hex_num
        decimal_num //= 16
    return hex_num

这三个函数分别是 decimal_to_binary()decimal_to_octal()decimal_to_hex()。它们使用循环和取余数操作来将 10 进制数据转换成 2 进制、8 进制或 16 进制数据。其中,decimal_to_hex() 函数还使用了一个条件语句来将 10 以上的余数转换成 A-F 字母。

Python 实现 10 进制转 2、8、16 进制 (不使用内置函数)

原文地址: https://www.cveoy.top/t/topic/nlUc 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录