题解 | 进制转换

进制转换

https://www.nowcoder.com/practice/8f3df50d2b9043208c5eed283d1d4da6

def hex2normal(hex):
    total = 0
    t1 = 0
    t = 0
    ratio = 0
    for i in hex[::-1]:
        if i == "x":
            break
        elif i == "a" or i == "A":
            ratio = 10
        elif i == "b" or i == "B":
            ratio = 11
        elif i == "c" or i == "C":
            ratio = 12
        elif i == "d" or i == "D":
            ratio = 13
        elif i == "e" or i == "E":
            ratio = 14
        elif i == "f" or i == "F":
            ratio = 15
        else:
            ratio = int(i)
        t1 = ratio * (16 ** t)
        total += t1
        t += 1
    print(total)


while True:
    try:
        hexdecimal = str(input())
        if len(hexdecimal) <= 10:
            hex2normal(hexdecimal)

    except:
        break

全部评论
点赞 回复 分享
发布于 01-27 14:02 新疆

相关推荐

不愿透露姓名的神秘牛友
昨天 17:04
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务