Python|进制转换问题
时间:2022-07-25
本文章向大家介绍Python|进制转换问题,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
问题描述
给定n个十六进制正整数,输出它们对应的八进制数。
1 输入格式
输入的第一行为一个正整数n (1<=n<=10)。
接下来n行,每行一个由0~9、大写字母A~F组成的字符串,表示要转换的十六进制正整数,每个十六进制数长度不超过100000。
2 输出格式
输出n行,每行为输入对应的八进制正整数。
【注意】
输入的十六进制数不会有前导0,比如012A。
输出的八进制数也不能有前导0。
3 样例输入
2
39
123ABC
4 样例输出
71
4435274
解决方案
在直接进制转换较难时,可以找个“中间值”。即十八进制——十进制——八进制
示例代码
def jz(x):
s=0
a={'A':10,'B':11,'C':12,'D':13,'E':14,'F':15}
x=str(x)[::-1]
for i in range(len(str(x))):#转化10进制
if x[i] in a:
s+=a[x[i]]*16**i
else:
s+=int(x[i])*16**i
h=''
while s>=1:#转化2进制
h+=str(s%2)
s=s//2
s=h#2进制
if len(s)%3==0:
pass
else:
s+='0'*(3-len(s)%3)
p=''
for i in range(0,len(s),3):#转化8进制(从右到左3个为一组)
k=s[i:i+3][::-1]
t=int(k[0])*2**2+int(k[1])*2**1+int(k[2])*2**0
p+=str(t)
return int(p[::-1])
n=int(input())
for i in range(n):
g=input()
print(jz(g))
结语
十进制中的数位排列是这样的…… 万 千 百 十 个 十分 百分 千分……
R进制中的数位排列是这样的……R^4 R^3R^2 R^1 R^0 R^-1 R^-2 R^-3……
规律:相邻的数位间相差该进制的一次方。
例如:
十进制的123=1×100+2×10+3×1
十进制的9876=9×1000+8×100+7×10+6×1
进制转换规律很简单,但很多人不知道,且实际操作很容易出错。
END
- JavaScript实例-----反选
- 1303: [CQOI2009]中位数图
- 1050: [HAOI2006]旅行comf
- 某厂2016实习招聘安全技术试题答案及解析
- 3732: Network
- 洛谷P3388 【模板】割点(割顶)(tarjan求割点)
- 每天学一点Docker(3)(制作你的第一个容器)
- 1635: [Usaco2007 Jan]Tallest Cow 最高的牛
- 1653: [Usaco2006 Feb]Backward Digit Sums
- 1619: [Usaco2008 Nov]Guarding the Farm 保卫牧场
- 1682: [Usaco2005 Mar]Out of Hay 干草危机
- 1637: [Usaco2007 Mar]Balanced Lineup
- AutoFac在项目中的应用
- 每天学一点Docker(5)——了解Docker架构
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- Flask 入门系列教程(三)
- 数据分析入门系列教程-微博热点
- 数据分析入门系列教程-常用图表
- PyTorch中的model.zero_grad() vs optimizer.zero_grad()
- Flask 入门系列教程(四)
- 代码审计
- ELF文件格式的详解
- 一个开源的RTOS的Chibios的评测
- CS学习笔记 | 25、邮件防御
- CS学习笔记 | 26、杀毒软件
- Python-pymysql
- 我又踩坑了!如何为HttpClient请求设置Content-Type标头?
- 在CentOS7上安装开源Verilog仿真工具EpicSim
- 【CS学习笔记】27、applet渗透测试手法
- Python-WSGI接口