描述
写出一个程序,接受一个十六进制的数,输出该数值的十进制表示。
数据范围:保证结果在![]()
输入描述:
输入一个十六进制的数值字符串。
输出描述:
输出该数值的十进制字符串。不同组的测试用例用\n隔开。
思路:
step1:输入一个十六进制的数;
step2:将输入的数用切片切去前两个字符“0x”,保留剩下位数的字符;
step3:创建一个字典,使得十六进制中的“A-F”分别对应“10-15”;
step4:记录切割后的字符长度,同时设立x=0,便于记录数值;
step5:遍历被切去后的字符,如果字符在字典里,则在字典中取出对应数值并求出当前位数的值,加在x中,同时字符长度减一;如果字符不在字典里,则直接求出当前位数对应的值,加在x中,同时字符长度减一
step6:打印数值x
代码如下:
s = input()
s = s[2:]
dic = {'A':10,'B':11,'C':12,'D':13,'E':14,'F':15}
n = len(s)
x = 0
for i in s:
if i in dic:
x = x + dic[i]*16**(n-1)
n = n-1
else:
x = x + int(i)*16**(n-1)
n = n-1
print(x)
这篇博客介绍了如何用Python编写一个程序,接收一个十六进制数,然后将其转换成十进制表示。代码通过切片去除'0x'前缀,利用字典映射'A-F'到'10-15',并逐位计算数值。最后输出转换后的十进制数。

379

被折叠的 条评论
为什么被折叠?



