十进制转化为十六进制python,二进制转十进制python代码
这几天一个二次元的问题一直困扰着我,不知道答案~ ~ ~
因为我不是计算机专家,所以缺乏很多计算机基础知识。
辛有凡给我解释过。嘿-嘿-嘿
其他主题和答案模板:
从二进制到八进制
该请求不能修改其他代码。反正你打不过我。我真不敢相信。直接看答案。我意识到我不知道。
标准答案:
你能理解吗?
需要提前了解:
首先,使用order(函数。该函数将一个字符(长度为1的字符串)作为参数,并返回相应的ASCII值或Unicode值。
通用Unicode字符和数字转换:
-数字48-57 ——代表字符“0”-“9”
-数字65-90 ——代表字符 A-Z
-数字97-122 ——代表字符 A-Z
这里有必要说明一下二进制之间的转换。
二进制1100转换成十进制时,计算为二进制[1100]=[1 (2 3) 1) 2 2) 0 (2 1) 0 (2 0)]十进制=12。
就是把任意十进制数转换成十进制数。需要的是每个十进制数的平方。
(功率由这个数的位置决定))位置从右向左数,从0开始)。
附上详细的了解过程:
输入这个问题:1100
(第一个周期:s=1100 ,d=0
S[0]=字符“1”,因此Unicode字符和数字转换:ord(s[0] )=ord(1)=number 49
通过Unicode字符和数字转换,order‘0’=数字48
因此,d=d * 2(ord(s[0]-ord) 0)49-48)=1。
s=[1:]=100
)第二周期:s=100 ,d=1
S[0]=字符“1”,因此Unicode字符和数字转换:ord(s[0] )=ord(1)=number 49
通过Unicode字符和数字转换,order‘0’=数字48
因此,d=d * 2(ord(s[0]-ord) 0)2)49-48)=3。
s=[1:]=00
第三个周期:s=00 ,d=3
S[0]=字符“1”,因此Unicode字符和数字转换:ord(s[0] )=ord(0 )=数字48
通过Unicode字符和数字转换,order‘0’=数字48
所以d=d * 2(order(s[0]-order) 0))2)48)=6。
s=[1:]=0
)第四个周期:s=0 ,d=6
S[0]=字符“1”,因此Unicode字符和数字转换:ord(s[0] )=ord(0 )=数字48
通过Unicode字符和数字转换,order‘0’=数字48
所以d=d * 2(order(s[0]-order) 0))12)48)=12。
s=[1:]=
循环到此结束~
这个方法其实就是把最基本的二进制转换成十进制的算法,其中D可以整除。
总结一下,就是前面说的公式。二进制[1100]=[1 (2 3) 1) 2) 0 (2 1) 0 (2 0)]十进制=12
最后,只需使用format)函数将十进制数12转换为八进制数即可。
答案是14。
我想说,完成这道题的基础很好。
加油!
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。