自学Python:十进制转二进制程序

自学Python:十进制转二进制程序,第1张

我们日常使用的是十进制的数,而计算机都是0101这样的二进制数,如果知道十进制数对应的二进制数是多少,可以设计一个程序。

def sto2(d):

    if d == 0:

        return '0' #处理输入的是0的情况游启首

    sign = ''

    if d <0:

        d = -d

        sign = '-'#转换输入的是负数的情况

   旁姿 b = ''

    while d != 0:

        b = str(d % 2) + b

        d = d // 2

    return sign + b

d = int(input('要转换的十进制数是:'))

print('对应的二进制结果为'+sto2(d))

执行测试一下神数:

要转换的十进制数是:28

对应的二进制结果为11100

要转换的十进制数是:-66

对应的二进制结果为-1000010

_______________END______________

1、将十进制转换成二进制,利用bin()方法。

2、获取亏迹二进制数据的长度袭铅。

3、to_bytes(),byteorder为little>>>(2048).to_bytes(2,byteorder='little')b'\x00\x08'。

4、使用to_bytes()方法,byteorder为big。

5、添加signed=True属性>>>(-10240).to_bytes(10,byteorder='拍空好little',signed=True)。

6、利用bit_length()方法>>>A3=45125656>>>A3.to_bytes((A3.bit_length()+7) // 8,byteorder='big')。就完成了。

给个10进制转2进制的。。你可以在根答旅据2进制转为8进制和16进制。4位丛贺2进制是1位16进制,3位2进制是1位8进制#include<iostream.h>int a[100]//记录2进制数据 int Icount//记录2进制整数个数 int Dcount//记录2进制小数个数void ITen_Two(int ten)//整数转换 { int i=0 while(ten>1) { a[i]=ten%2 ten=ten/2//不用管奇偶 i++ Icount++ } if(ten<=1) { a[i]=1 Icount++ } }void DTen_Two(float d)//小数转换 { int i=Icount Dcount=0 a[i]=0 while(d!=0 &&i<100) { d=d*2 if(d>=1) {a[i]=1 d=d-1 } elsea[i]=0 i++ Dcount++ } }void Out() { cout<<"2进制数为:" for(int i=Icount-1i>=0i--) cout<<a[i] cout<渗举派<"." for(int j=Icountj<Icount+Dcountj++) cout<<a[j] cout<<endl}void main() { float x int B=1//结束标志 while(B==1) { int I//整数部分 float D//小数部分 Icount=0 Dcount=0 cout<<"请输入一个10进制浮点数:" cin>>x I=(int)x D=x-I if(I>0 &&D>0) {ITen_Two(I) DTen_Two(D) } else if(I==0 &&D>0)DTen_Two(D) else if(I>0 &&D==0)ITen_Two(I) elsecout<<"0" if(I>0 || D>0)Out(


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12400795.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-25
下一篇 2023-05-25

发表评论

登录后才能评论

评论列表(0条)

保存