精华内容
下载资源
问答
  • 只写出了十进制小数转换成二进制的,求二进制小数十进制
    2021-05-23 02:08:23

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼

    #include

    #include

    #include

    #define NUM 2

    #define ZERO 0.000001

    int PrnMainMenu(void);

    void ProcessLoop(void);

    void two(void);

    void ten(void);

    int a,b[10],i=0,c=0;

    void integer(int n) //定义整数部分

    {

    if(n>0)

    {

    integer(n/NUM);

    printf("%d",n%NUM);

    }

    }

    void decimal(double m)//定义小数部分

    {

    if(m>ZERO)

    {

    m=m*NUM;

    printf("%d",(long)m);

    decimal(m-(long)m);

    }

    }

    main() /*主函数*/

    {

    ProcessLoop();

    return 0;

    }

    void ProcessLoop(void)

    {

    int iChoice;

    iChoice = PrnMainMenu();

    while (iChoice != 3)

    {

    switch(iChoice)

    {

    case 1:

    two();

    break;

    case 2:

    ten();

    break;

    }

    system("pause");/*暂停*/

    system("cls"); /*_clearscreen(0);清屏 */

    iChoice = PrnMainMenu();//返回主菜单

    }

    return;

    }

    void two(void)//十进制转二进制

    {

    double f;

    long n;

    printf("请输入原数据:");

    scanf("%lf",&f);

    if(f<0)

    {

    printf("-");

    f=-f;

    }

    n=(long)f;//整数部分

    printf("转换成%d进制的小数为:",NUM);

    integer(n);

    printf(".");

    decimal(f-n);//小数部分的转换

    printf("\n");

    }

    void ten(void)//二进制转十进制

    {

    printf("请输入原数据\n");

    scanf("%d",&a);

    while(a!=0)

    {

    b[i]=a%10;

    a/=10;

    i++;

    }

    i--;

    for(;i>=0;i--)

    c=c*2+b[i];

    printf("十进制为:%d\n",c);

    }

    int PrnMainMenu(void)//主菜单

    {

    int iChoice;

    printf("\n");

    printf("----------------菜单-----------------\n");

    printf("\n");

    printf(" 1:将十进制数转换为二进制数\n");

    printf(" 2:将二进制数转换为十进制数\n");

    scanf("%d",&iChoice);

    return iChoice;

    }

    更多相关内容
  • 主要介绍了Python实现的十进制小数与二进制小数相互转换功能,结合具体实例形式详细分析了二进制与十进制相互转换的原理及Python相关实现技巧,需要的朋友可以参考下
  • 一、二进制转换成十进制数由二进制转换成十进制数的基本做法是,把二进制数首先写加权系数展开式,然后按十进制加法规则求和。这种做法称为"按权相加"法。例如把二进制数 110.11 转换成十进制数。二、十进制数...

    一、二进制数转换成十进制数

    由二进制数转换成十进制数的基本做法是,把二进制数首先写成加权系数展开式,然后按十进制加法规则求和。这种做法称为"按权相加"法。

    例如把二进制数 110.11 转换成十进制数。

    二、十进制数转换为二进制数

    十进制数转换为二进制数时,由于整数和小数的转换方法不同,所以先将十进制数的整数部分和小数部分分别转换后,再加以合并。

    1. 十进制整数转换为二进制整数

    十进制整数转换为二进制整数采用"除2取余,逆序排列"法。具体做法是:用2去除十进制整数,可以得到一个商和余数;再用2去除商,又会得到一个商和余数,如此进行,直到商为零时为止,然后把先得到的余数作为二进制数的低位有效位,后得到的余数作为二进制数的高位有效位,依次排列起来。

    例如把 (173)10 转换为二进制数。

    解:

    2.十进制小数转换为二进制小数

    十进制小数转换成二进制小数采用"乘2取整,顺序排列"法。具体做法是:用2乘十进制小数,可以得到积,将积的整数部分取出,再用2乘余下的小数 部分,又得到一个积,再将积的整数部分取出,如此进行,直到积中的小数部分为零,或者达到所要求的精度为止。

    然后把取出的整数部分按顺序排列起来,先取的整数作为二进制小数的高位有效位,后取的整数作为低位有效位。

    例如把(0.8125)转换为二进制小数。

    解:

    例: (173.8125)10=( )2

    解:

    在上个例子中得(173)10=(10101101)2

    得(0.8125)10=(0.1101)2

    把整数部分和小数部分合并得: (173.8125)10=(10101101.1101)2

    十进制小数转换成二进制小数采用"乘2取整,顺序排列"法。具体做法是:用2乘十进制小数,可以得到积,将积的整数部分取出,再用2乘余下的小数部分,又 得到一个积,再将积的整数部分取出,如此进行,直到积中的整数部分为零,或者整数部分为1,此时0或1为二进制的最后一位。或者达到所要求的精度为止。

    然后把取出的整数部分按顺序排列起来,先取的整数作为二进制小数的高位有效位,后取的整数作为低位有效位。

    十进制小数转二进制

    如:0.625=(0.101)B

    0.625*2=1.25======取出整数部分1

    0.25*2=0.5========取出整数部分0

    0.5*2=1==========取出整数部分1

    再如:0.7=(0.1 0110 0110...)B

    0.7*2=1.4========取出整数部分1

    0.4*2=0.8========取出整数部分0

    0.8*2=1.6========取出整数部分1

    0.6*2=1.2========取出整数部分1

    0.2*2=0.4========取出整数部分0

    0.4*2=0.8========取出整数部分0

    0.8*2=1.6========取出整数部分1

    0.6*2=1.2========取出整数部分1

    0.2*2=0.4========取出整数部分0

    展开全文
  • 十进制小数二进制matlab代码激光转向装置控制程序 1.数字输出代码 63:开启激光 62:激光关闭 61:会话开始---- presentationstatecode:1 60:会话结束----演示状态代码:0 1-59:位置代码 2.工作流程 2.1。 ...
  • python本身并不适合做数值运算,如果需要数值运算的话,调用python的内置函数会快得多。 把二进制小数先左移到小数点左侧,然后用int()函数转换为整数,最后再除以2的左移位数次方即可。

    如果需要把一个二进制整数转换为十进制整数,只需要简单的一行:

    int('1101',2)

    但如果有一个二进制小数的话,就需要自己实现一个函数了。

    不过,许多人是这样写的:(图片取自这里)

    可是,由于python本身并不适合做数值运算,如果需要数值运算的话,调用python的内置函数会快得多。

    可以换一种思路:把二进制小数先左移到小数点左侧,然后用int()函数转换为整数,最后再除以2的左移位数次方即可。代码如下:

    def bin_to_dec(b):
        b1 = b[:b.index('.')]
        b2 = b[b.index('.')+1:]
        d1 = int(b1,2)
        d2 = int(b2,2)/2**(len(b2))
        return d1+d2

    稍作简化:

    def bin_to_dec(b):
        p = b.index('.')
        return int(b[:p],2)+int(b[p+1:],2)/2**len(b[p+1:])

    展开全文
  • 此文档为《进制小数和二进制小数相互转换》,让C++初学者更好的理解进制转换【独家出版,未经允许,禁止侵权】
  • 本文实例讲述了Python实现的进制小数与二进制小数相互转换功能。分享给大家供大家参考,具体如下:进制小数 ⇒ 二进制小数乘2取整对进制小数乘2得到的整数部分和小数部分,整数部分即是相应的二进制数码,再用...

    本文实例讲述了Python实现的十进制小数与二进制小数相互转换功能。分享给大家供大家参考,具体如下:

    十进制小数 ⇒ 二进制小数

    乘2取整

    对十进制小数乘2得到的整数部分和小数部分,

    整数部分即是相应的二进制数码,

    再用2乘小数部分(之前乘后得到新的小数部分),又得到整数和小数部分。

    如此不断重复,直到小数部分为0或达到精度要求为止.

    第一次所得到为最高位,最后一次得到为最低位

    如:

    0.25的二进制

    0.25*2=0.5   取整是0

    0.5*2=1.0     取整是1

    即0.25的二进制为 0.01 ( 第一次所得到为最高位,最后一次得到为最低位)

    0.8125的二进制

    0.8125*2=1.625  取整是1

    0.625*2=1.25      取整是1

    0.25*2=0.5          取整是0

    0.5*2=1.0            取整是1

    即0.8125的二进制是0.1101(第一次所得到为最高位,最后一次得到为最低位)

    def dec2bin(x):

    x -= int(x)

    bins = []

    while x:

    x *= 2

    bins.append(1 if x>=1. else 0)

    x -= int(x)

    return bins

    print(dec2bin(.8125))

    # [1, 1, 0, 1]

    二进制小数 ⇒ 十进制小数

    小数点后,从左向右,每位分别表示

    news_show_1183741.shtml

    def bin2dec(b):

    d = 0

    for i, x in enumerate(b):

    d += 2**(-i-1)*x

    return d

    print(dec2bin(0.8125))

    # [1, 1, 0, 1]

    print(bin2dec(dec2bin(0.8125)))

    # 0.8125

    PS:这里再为大家推荐几款计算与转换工具供大家参考使用:

    在线任意进制转换工具:http://tools.jb51.net/transcoding/hexconvert

    科学计算器在线使用_高级计算器在线计算:http://tools.jb51.net/jisuanqi/jsqkexue

    在线计算器_标准计算器:http://tools.jb51.net/jisuanqi/jsq

    更多关于Python相关内容感兴趣的读者可查看本站专题:《Python数学运算技巧总结》、《Python数据结构与算法教程》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》、《Python入门与进阶经典教程》及《Python文件与目录操作技巧汇总》

    希望本文所述对大家Python程序设计有所帮助。

    展开全文
  • 下面小编就为大家带来一篇浅谈进制小数和二进制小数之间的转换。小编觉得挺不错的现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
  • 举例:将 二进制0.1111转换成 十进制二进制 0 . 1 1 1 1 换算次方 2^(0) 2^(-1) 2^(-2) 2^(-3) 2^(-4) 换分数 0/2
  • 这篇文章主要介绍了Python实现的十进制小数与二进制小数相互转换功能,结合具体实例形式详细分析了二进制与十进制相互转换的原理及Python相关实现技巧,需要的朋友可以参考下本文实例讲述了Python实现的十进制小数与...
  • 二进制、八进制、十六进制转换十进制二进制、八进制和十六进制向十进制转换都非常容易,就是“按权相加”。所谓“权”,也即“位权”。假设当前数字是N进制,那么:对于整数部分,从右往左看,第 i 位的位权等于...
  • 进制小数转为二进制小数方法

    千次阅读 2021-09-08 22:16:38
    十进制小数转换为二进制的方法为 十进制小数乘2,取出整数作为二进制小数第一位,余下的小数再乘以2,取出整数作为小数第二位,如此反复,直至余下的小数为0。 例: 十进制 0.375 0.375 * 2 = 0.75 ———— 0 ...
  • 十进制小数转二进制小数类 /// /// 十进制转二进制 /// /// 指定的数字Double类型 /// 返回转化后的二进制数字 public string DecToBinary(double number) { string value = ""; long izs = (long)number...
  • 本文给大家介绍的是一则使用C++实现读入二进制数并转换十进制输出的代码,实现起来其实非常简单,C++本身就提供了二进制类库的,大家看代码吧,简单又实用。
  • 二进制转换十进制一个二进制转换十进制数,是比较简单的,其方法就是用每一个位置上的数字乘以该位置的权重,然后相加得到。举个例子,二进制的1010转换十进制的话,从其最后面一位0开始,一直往前,其权重...
  • 再用2去除商,又会得到一个商和余数,如此重复,直到商为小于1时为止,然后把先得到余数作为二进制数的低位有效位,后得到的余数作为二进制数的高位有效位,以此排列起来。注1:当一个整数除另一个整数得到整数商而...
  • 适用于将二进制转换十进制,A为十进制,B为二进制。{A,B}每次左移一位,判断A的每四位是否>4,若大于四则+3,否则保持不变;B为多少位二进制数则左移多少次。最终A是B转换成十进制的数。代码为32位二进制转换...
  • 本文实例讲述了Python实现的进制小数与二进制小数相互转换功能。分享给大家供大家参考,具体如下:进制小数 ⇒ 二进制小数乘2取整对进制小数乘2得到的整数部分和小数部分,整数部分即是相应的二进制数码,再用...
  • 进制小数如何转换二进制小数

    千次阅读 2020-03-13 00:58:07
    关于十进制小数转换二进制数,下面是我的详细操作说明,仅供参考。 纯小数 首先,最高位是符号位,正数是0,负数是1;小数部分乘以2,然后取整数部分,,剩余小数部分继续乘以2,取整数部分,……直到小数部分为0...
  • 二进制小数十进制方法

    万次阅读 多人点赞 2019-04-09 19:32:43
    知识点一:一个数的负次方即为这个数的正次方的倒数。 方法一、转换分数法 参考文章:https://jingyan.baidu.com/article/597a0643614568312b5243c0.html ... 举例:将 二进制0.1111转换成 十进制二进制...
  • 二进制十进制小数转换

    千次阅读 2021-01-20 13:58:07
    方法: 十进制的小数转为二进制,...二进制小数转换十进制主要是乘以2的负次方,从小数点后开始,依次乘以2的负一次方,2的负二次方,2的负三次方等。 eg: 二进制数0.001转换为十进制。 转载百度 ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 63,353
精华内容 25,341
关键字:

二进制小数转换成十进制