精华内容
下载资源
问答
  • 进制数,其实是一种以8进制的数字,逢8进1,八进制十进制的算法,各位小伙伴们其实百度搜一下相关的视频,就会出来一大堆,比如下面的一个视频截图,显示了主要的算法。算法.png使用Python来进行计算,主要有...

    八进制数,其实是一种以8为进制的数字,逢8进1,八进制转十进制的算法,各位小伙伴们其实百度搜一下相关的视频,就会出来一大堆,比如下面的一个视频截图,显示了主要的算法。

    算法.png

    使用Python来进行计算,主要有两种算法,一种是直接通过int来实现八进制到十进制的转换,这里主要考察的Python内置函数int的用法,通过设置内置函数的参数可以自动实现八进制及其他进制转换为十进制的方法。

    第一种算法:通过Python内置函数int实现。

    代码的实现过程如下:

    # 八进制转换为十进制

    # 此处主要是考察Python的内置函数,int的用法,int通过设置内置的参数可以自动实现八进制,及其他进制转换为十进制的方法

    a = input("请输入一个八进制数:") # 此时的数为一个字符串,注意,不是int(input)

    b = int(a,8) # 将这个八进制数,int一下,也就是转换为十进制数,将第二个参数换成2,则可以实现二进制转换为十进制,换成16,可以实现16进制转换为十进制。

    print(b)

    运算的结果如下图:

    C:\Python\python.exe "C:/Users/Administrator/Desktop/Python 练习实例100题/练习82.py"

    请输入一个八进制数:10

    8

    Process finished with exit code 0

    第二种算法:通过传统的算法实现。

    具体实现的代码如下:

    a = input('请输入一个八进制数:')

    sum = 0

    for i in range(len(a)-1,-1,-1):

    sum += int(a[0])*(8**i)

    print('%d 的十进制为:%d' % (int(a), sum))

    2020年5月10

    北京市通州区京贸中心

    展开全文
  • 一.十进制与二进制互转首先理解十进制如何转二进制:将十进制数据除以2直到商为0...所以13转化二制1101可以用转化工具测试https://tool.lu/hexconvert/理解十进制如何转换二进制算法,那我们用PHP代码实现一下1....

    一.十进制与二进制互转

      首先理解十进制如何转二进制:将十进制数据除以2直到商为0,然后将余数从下往上排序连接,即可得到该数字的二进制数。

    666a69e08cb235ed03944cf9b29a0215.png

    如:整数13

    13/2=6余1

    6/2=3余0

    3/2=1余1

    1/2=0余1

    取13余数,倒序连接。所以13转化二制为1101

    可以用转化工具测试https://tool.lu/hexconvert/

    理解十进制如何转换为二进制算法,那我们用PHP代码实现一下

    1.

    echo decbin(13)

    输出结果是1101,这种方法特别简单,但实现原理你知道么?你不知道。。。

    你不知道自己写写不就知道了么

    $tenChangetwoFun = function ($num = 0){    if($num < 2)    {        return $num;    }    $twoArr = [];    $shang = $num / 2;    $yushu = $num % 2;    array_unshift($twoArr, $yushu);    while ($shang)    {        $yushu = $shang % 2;        $shang = intval($shang / 2);        array_unshift($twoArr, $yushu);    }    return implode('', $twoArr);};echo $tenChangetwoFun(15);

    知道了十进制转二进制了,我们来聊一下二进制转化为十进制

    解释一下,解释过程非常重要,要仔细看:

    从最低位(最右)算起,位上的数字乘以本位的权重,权重就是2的第几位的位数减一次方。比如第1位:2^(1-1)=1,第22^(2-1)=2,以此类推,二进制1101,换算十进制1*2^(1-1)+0*2^(2-1)+1*2^(3-1)+1*2^(4-1)=1+0+4+8=13

    用代码实现一下:

    echo bindec(1101);

    这段代码是不是很简单,虽然简单,但我们也要知道它实现的原理,我们用php代码实现一下:

    $twoChangeTenFun = function ($twonum){    $twonum = (string)$twonum;    $len = strlen($twonum);    $twonum = strrev($twonum);    if($len < 1)    {        return 0;    }    $total = 0;    for ($i = 0; $i< $len; $i++)    {        $total += $twonum[$i]*pow(2,$i);    }    return $total;};echo $twoChangeTenFun(1101);

    以上是十进制与二进制互转,接下来讲一下十进制与八进制互转

    二.十进制转八进制

    十进制转八进制跟十进制转二进制原理一样,如图:

    05269b88d7619be1bbf38597b4007090.png

    如:整数130

    130/8=16余2

    16/8=2余0

    2/8=0余2

    取130的余数,倒序连接,得出202

    理解十进制转八进制算法,我们用php代码实现一下

    echo decoct(130);

    得出结果为202;这段代码是不是也很简单,我们理解一下它的实现原理,用php代码实现一下:

    $tenChangeeightFun = function ($num = 0){    if($num < 8)    {        return $num;    }    $eightArr = [];    $shang = $num / 8;    $yushu = $num % 8;    array_unshift($eightArr, $yushu);    while ($shang)    {        $yushu = $shang % 8;        $shang = intval($shang / 8);        array_unshift($eightArr, $yushu);    }    return implode('', $eightArr);};echo $tenChangeeightFun(130);

    惊不惊讶,刺不刺激,是不是跟上面二进制与十进制代码转化一样,对!就是一样的,可以用一套方法,传不同参数就行了。

    知道十进制怎么转八进制,来看一下八进制转十进制呢,跟二进制转十进制一样,从最低位(最右)算起,位上的数字乘以本位的权重,权重就是8的第几位的位数减一次方。比如第1位:8^(1-1)=1,第2位8^(2-1)=2,以此类推,八进制202,换算十进制2*8^(1-1)+0*8^(2-1)+2*8^(3-1)=2+0+128=130

    最简单代码:

    echo octdec(202);

    我们在用最复杂的代码实现一下,知道它的实现原理

    $eightChangeTenFun = function ($eightnum){    $eightnum = (string)$eightnum;    $len = strlen($eightnum);    $eightnum = strrev($eightnum);    if($len < 1)    {        return 0;    }    $total = 0;    for ($i = 0; $i< $len; $i++)    {        $total += $eightnum[$i]*pow(8,$i);    }    return $total;};echo $eightChangeTenFun(202);

    这段代码跟二进制转十进制一样。通过这两个转换,那十进制转十六进制与十六进制转十进制就不详细说明了。

    展开全文
  • ##不甘平凡#最近在学习python,不过跟着课本的作业题目:分别就计算二进制110110011、八进制256和十六进制的数字a4b5,并转化为十进制求和。不过写过程中遇到了个问题:如何在python中输入二进制数字?在网上百度了...

    #Python##致奋斗中的自己!##不甘平凡#

    最近在学习python,不过跟着课本的作业题目:

    分别就计算二进制110110011、八进制256和十六进制的数字a4b5,并转化为十进制求和。

    不过写过程中遇到了个问题:如何在python中输入二进制数字?

    在网上百度了30分钟,没有找到答案,无奈之下只能看下答案,通过答案逆向学习推理后发现python其实可以输入任意进制数据,转化的时候,在函数中明确即可。

    比如:将八进制的256转化为十进制,可以使用以下代码:

    aec772d8d75843d89110be1303072916

    第一行是提示输入数据

    第二行是将输入数据转换为十进制,并赋值给a。PS:int(number,进制类别)可以将括号内数据转化为十进制(进制类别可以省略,默认为十进制)

    第三行打印转化为十进制后的数据。

    通过结合作业练习和自己波折的路发现:

    1、千万不要以为看过就会了,通过练习(包括但不限于写作业)会发现很多细节上要注意的(比如我这个菜鸟问题);

    2、要善于使用互联网工具进行查找,虽然百度30分钟没查到如何输入二进制数据,但却找到了不同进制间转化的方法,比如int为转换十进制;hex为转换成十六进制;oct为转换成白进制;bin为转化成二进制

    3、如果确实找不到就看下答案进行逆向思考或咨询大牛,然后总结成自己的。

    c110fa7b-c857-44f9-9bf3-40f659c9937b

    扩展1:小伙伴可以尝试下把十进制的1314,转化成二进制、十六进制、八进制来练习下。

    扩展2:建议结合自己的职业发展进行选择,比如我学习python的目的其实就是纯粹想提高办公自动化技能;因为,成年人的时间和精力是被工作和生活扯得支离破碎的,能抽出的时间极其有限,一定要让有限的精力最大化利用。

    9ff63e6c-d961-46ad-af2c-698d0c9e9a38
    展开全文
  • 一、十进制到二进制的转化 1、常规方法:十进制到二进制的转化需要使用到数学中的短除法,将正的十进制整数除以二得到商,再除以二,同时在右侧标注好余数,一直除到商为0为止。然后将得到的余数,自下向上的写出来...

    一、十进制到二进制的转化
    1、常规方法:十进制到二进制的转化需要使用到数学中的短除法,将正的十进制整数除以二得到商,再除以二,同时在右侧标注好余数,一直除到商为0为止。然后将得到的余数,自下向上的写出来。这时候得到的01串就是我们所要转化的二进制,然后进行补零操作,计算机的一个字节有八个比特位。所以在得到01串时我们需要在前面补零,知道有八位数字为止。值得一提是,若该整数为负数,我们只需将其为正时所得的二进制进行按位取反并加一
    2、快捷方法:该方法仅适用于小于16的十进制转化二进制,其实也可以推广至大于16的数,但这样一来就失去了他快捷的意义。
    方法如下:只需记住1,2,4,8,若所求的数为13,可以得到13 = 8 + 4 + 1 = 2³ + 2² + 2º ,所以在 只需在0000的第四位,第三位,第一位,将0改为1,所以转化的结果是 1101。
    二、十进制到十六进制的转化
    与十进制转化二进制的方法类似,我们只需要讲十进制数字除以16,并反向取余,注意十进制的10对应十六进制的A,以此类推。

    展开全文
  • 一.十进制与二进制互转首先理解十进制如何转二进制:将十进制数据除以2直到商为0...所以13转化二制1101可以用转化工具测试https://tool.lu/hexconvert/理解十进制如何转换二进制算法,那我们用PHP代码实现一下1....
  • Java中进制如何转化

    2019-09-25 23:00:10
    在java中如何实现将一个十进制整数转化为一个二进制数或者十六进制? 首先,我们需要明白数字的表示方法是怎样的。比如我们平时说的1,2,3,4,5,6.....这样的数字都是以十进制来进行表示的。而进制简单来解释...
  • ##不甘平凡#最近在学习python,不过跟着课本的作业题目:分别就计算二进制110110011、八进制256和十六进制的数字a4b5,并转化为十进制求和。不过写过程中遇到了个问题:如何在python中输入二进制数字?在网上百度了...
  •   接下来就和我来看看十进制如何转化为二进制的吧!   一.除二取余   输入一个十进制的数字,一直除以二,将其余记下来。接下来再用商来除以二,记下余数,直到商变为0结束。再将余数倒着依次排列就能够...
  • 对我们最熟悉的莫过于十进制和二进制了,接下来给大家讲解下如何实现将十进制转化为二进制。【1】十进制我们最熟悉,我在这里不多做解释,只说十进制怎么运算,例如302,可以看成从右往左以索引倒叙分别从0开始,...
  • Python之各进制数表示与进制转换

    千次阅读 2018-01-19 12:38:56
    我们知道直接在python里输入的数是十进制数,那如何输入其他进制数呢?二进制数:加前缀0b或者0B(注意是阿拉伯数字0):进制数:加前缀0o或者0O(注意前面是阿拉伯数字0后面是字母o):十六进制数:加前缀0x或者...
  • 此题目其实就是将一个任意进制先转化为十进制,然后将其转化为对应的进制,很多人一开始都是想这如何让计算机计算机直接识别我输入的是几进制,因为有县里嘛,计算机能够自主识别我输入的是八进制或十六进制,比如我...
  • 以BIN桥梁的方法最好计算将DEC,OCT,HEX统统转化成BIN,在通过相应方法转变其他进制数。 二进制转八进制将3位转为1位 二进制转十六进制 注:十六进制数码:0、1、2、3、4、5、6、7、8、9 ​ A、B、C、D、E、F即...
  • 数制的概念与常用的数制之间如何实现转化呢一、首先我们来看一下,数制和与它相关的基数、位权是什么?1. 数制就是表示数值大小的各种计数体制,简单来说就像是1,2,3···之类的用来计数的,只不过有很多类。例如:...
  • 进制转换问题

    2020-02-02 16:38:07
    平常我们所用的数字一般都是十进制,但是计算机使用的是二进制。另外还有八进制、十六进制等。那么如何将进制相互转化呢...十进制数: 代码如下: /* 传入参数:P进制数x * 返回:对应的十进制数 */ int f(i...
  • 正题:其它进制如何转化为十进制1.二进制转十进制的二进制数值为1110010 它的十进制数值为(直接写公式,上标很凌乱,上图吧): 结果是:114从理论角度说明一下是怎么计算的: 分为两步走: 算出每一位上...
  • 进制的魅力进制进制转换常见的八位二进制IP地址私有网络地址和公有网络地址公有网络地址的...那么二进制是如何转化十进制的呢? 即通过按权展开相加即可 例如:11010转化成十进制=1×2⁴+1×2³+1×2¹ =16+8+2 =26
  • 对“在EXCEL中如何使用VBA进行格式转化”的改进算法在在EXCEL中如何使用VBA进行格式转化中,我们简单的讨论了如何用VBA实现十六进制、十进制、...比如说,” – 345 FABC KK WW”转化为十进制数的应用,等ü 对于
  • 如何判断一个十进制数转化成二进制度后二进制数一共有几位?一个十进制数a转化成二进制度后,要判断二进制数一共有几位,要看a的大小与2的几次方比较 输出为八进制数可以用%o,输出为十六进制可以用%x,输出为二进制...
  • FPGA笔试题解析(二)

    千次阅读 2019-02-24 16:29:48
    十进制数转化为R进制数:整数部分,除R取余法,除到商为0为止。小数部分,乘R取整法,乘到积为0为止。 二进制数转化进制数:三位一组,整数部分左边补0,小数部分右边补0。反之亦然。 二进制数转化十六进制数:...
  • 02-数据类型和运算符

    2019-04-15 22:53:00
    2. 如何十进制数据转化为二进制数据? 答:除以2取余,再逆序排列 日常 64 32 16 8 4 2 1 3. 位,字节,字符的概念及计数范围? 位 :计算机的基本存储单位,一个位代表一个二进制数位。 计数范围:0-1 ...
  • 1.十进制如何转化为八进制十六进制N进制:正数除N反余,小数乘N取整;翻过来时各个位分别乘以N的x(位数)次幂 As a recruiting ploy, Google once posted billboards in Harvard Square and in the Silicon Valley...
  • print() 函数使用以 % 开头的转换说明符对各种类型的数据进行...转换说明符解释%d、%i转换为带符号的十进制整数%o转换为带符号的八进制整数%x、%X转换为带符号的十六进制整数%e转化为科学计数法表示的浮点数(e 小写...
  • 在学c#的时候书上提到过左移右移,不过并没有作为重点来讲,只是大概地说了一下是什么含义。...第一小节讲了计算机为什么用二进制表示信息,然后第二节讲了什么是二进制数,以及二进制转化为十进制的方法,接着...
  • IP地址异形

    2017-07-14 09:10:16
    IP地址一般是由"."分开的四组十进制的数字组成,每组数字从0~255,其实它也可以用二进制、八进制、十六进制形式表示。因此上面的怪网址就是实际上就是IP地址的二进制、八进制、十六进制形式,那么如何对IP地址进行...
  • C#编程经验技巧宝典

    热门讨论 2008-06-01 08:59:33
    98 <br>0153 如何自定义数字小数点左边分组位数 98 <br>0154 格式化输入数据货币格式 99 <br>0155 如何计算两个整数的乘积 99 <br>0156 如何将二进制数转换为十进制数 100 <br>0157 如何...
  • delphi 开发经验技巧宝典源码

    热门讨论 2010-08-12 16:47:23
    0111 如何将二进制转换为八进制 73 0112 如何将二进制转换为十进制 75 0113 如何将二进制转换为十六进制 76 0114 如何十进制转换为二进制 77 0115 如何十进制转换为十六进制 78 0116 如何将十六进制...
  • 0111 如何将二进制转换为八进制 73 0112 如何将二进制转换为十进制 75 0113 如何将二进制转换为十六进制 76 0114 如何十进制转换为二进制 77 0115 如何十进制转换为十六进制 78 0116 如何将十六进制...
  • 0111 如何将二进制转换为八进制 73 0112 如何将二进制转换为十进制 75 0113 如何将二进制转换为十六进制 76 0114 如何十进制转换为二进制 77 0115 如何十进制转换为十六进制 78 0116 如何将十六进制...
  • 0111 如何将二进制转换为八进制 73 0112 如何将二进制转换为十进制 75 0113 如何将二进制转换为十六进制 76 0114 如何十进制转换为二进制 77 0115 如何十进制转换为十六进制 78 0116 如何将十六进制...

空空如也

空空如也

1 2 3
收藏数 41
精华内容 16
关键字:

十进制数如何转化为八进制