最近在刷蓝桥杯题目,按题目做一下笔记整理,顺便分享交流一下,有更好的解决方案欢迎大家共同提出探讨,以下源代码为系统提交满分答案
十进制转十六进制
问题描述
资源限制
Python时间限制:5.0s、
问题描述
十六进制数是在程序设计时经常要使用到的一种整数的表示方式。它有0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F共16个符号,分别表示十进制数的0至15。十六进制的计数方法是满16进1,所以十进制数16在十六进制中是10,而十进制的17在十六进制中是11,以此类推,十进制的30在十六进制中是1E。
给出一个非负整数,将它表示成十六进制的形式。
输入格式
输入包含一个非负整数a,表示要转换的数。0<=a<=2147483647
输出格式
输出这个整数的16进制表示
样例输入
30
样例输出
1E
源代码
num = int(input())
if 0<=num<=2147483647: # 判断数值是否符合范围
print(hex(num)[2:].upper()) # 转换为十六进制,从第三位取数并将字母转为大写
问题分析
hex(num)
表示将十进制的数转换为十六进制,转换完成后八进制数前有0x前缀
,使用[2:]
从第三位开始取值,从而去掉0x,此处需注意输出后的字母为大写,因此使用upper将字母转换为大写
测评结果
![在这里插入图片描述](https://img-blog.csdnimg.cn/59d68a52b9e949be956fcfe648240754.png#pic_center)
更多题目,点击查看👇
Python蓝桥杯 基础练习题目整理👈
Python蓝桥杯 算法训练题目整理👈
Python蓝桥杯 算法提高题目整理👈
Python蓝桥杯 历届真题题目整理👈
Python蓝桥杯 练习系统题目整理(全)👈