为什么八进制746转16进制为1e6
时间: 2024-03-30 13:33:56 浏览: 15
八进制数 746 转换成十进制为 486,再将十进制数 486 转换成十六进制数为 1E6。具体转换方法如下:
首先将八进制数 746 转换成十进制数:7 × 8² + 4 × 8¹ + 6 × 8⁰ = 486。
然后将十进制数 486 转换成十六进制数:486 ÷ 16 = 30 余 6,30 ÷ 16 = 1 余 14(E),1 ÷ 16 = 0 余 1,所以十六进制数为 1E6。
相关问题
python进制转换编程题
Python进制转换编程题可以通过定义函数来实现。下面是一个将十进制数转换为二进制、八进制、十六进制的示例代码:
```python
def convert(num, base):
"""
将十进制数转换为二进制、八进制、十六进制
>>> convert(13, 2)
'1101'
>>> convert(23, 16)
'17'
>>> convert(23, 8)
'27'
>>> convert(30, 16)
'1E'
"""
codes = "0123456789ABCDEF"
s = ""
while num != 0:
r = num % base
s = codes[r] + s
num //= base
return s if s != "" else "0"
if __name__ == "__main__":
import doctest
doctest.testmod(verbose=True)
```
该函数接受两个参数,分别为需要转换的十进制数和目标进制数。在函数内部,使用了一个while循环,不断地将十进制数除以目标进制数,得到余数,并将余数对应的字符添加到结果字符串中。最后返回结果字符串即可。
相关问题:
c++整数转十六进制字符串
将一个十进制整数转换成十六进制字符串可以通过不断对该整数进行除以16,取余数的操作,将得到的余数逆序排列即可得到十六进制字符串。
具体步骤如下:
1. 对该整数进行除以16的操作,得到商和余数。
2. 将余数转换成16进制表示的字符,例如余数为10,对应的16进制字符为'A'。
3. 将上一步得到的字符连接到结果字符串的末尾。
4. 将整数更新为商继续除以16,直到商为0为止。
5. 最后将字符串逆序输出即可得到正确的十六进制表示。
例如,将数字123456转换为十六进制字符串时,操作如下:
第一步:123456÷16=7716余0
第二步:余数是0,对应的16进制字符为'0',结果字符串为'0'
第三步:更新整数为商,新的整数为7716
第四步:7716÷16=482余4
第五步:余数是4,对应的16进制字符为'4',结果字符串为'40'
第六步:更新整数为商,新的整数为482
第七步:482÷16=30余2
第八步:余数是2,对应的16进制字符为'2',结果字符串为'402'
第九步:更新整数为商,新的整数为30
第十步:30÷16=1余14
第十一步:余数是14,对应的16进制字符为'E',结果字符串为'402E'
第十二步:更新整数为商,新的整数为1
第十三步:1÷16=0余1
第十四步:余数是1,对应的16进制字符为'1',结果字符串为'402E1'
最后将结果字符串逆序输出,得到的十六进制字符串即为'1E2040'。