A. python中怎样将十进制数转化为二进制
#!/usr/bin/python# -*- coding:utf-8 -*-# @Time : 2018/6/19 10:20# @Author : # @File : Dec_To_Bin.py"""十进制转二进制""" # 定义一个十进制转二进制的函数def dec2bin(string_num): num = int(string_num) # 将传入的字符串数字转换成整型 mid = [] # 定义一个空列表 while True: # 循环,条件为真时执行 if num == 0: # 当输入值是0时,直接跳出循环 break num, rem = divmod(num, 2) # 调用函数divmod,得到商num,和余数rem mid.append(rem) # 将余数存入列表 return ''.join([str(x) for x in mid[::-1]]) # 返回结果,列表取反后拼接成字符串 if __name__ == '__main__': anum = raw_input(u'请输入要转换的数字:') print u'该数字转换为二进制后是:{}'.format(dec2bin(anum))
B. 十进制转化为二进制python
1、定义函数deciBin
def deciBin():
w = input("请输入一个十进制数:")
t = bin(int(w, 10))
return t
2、调用函数并打印
two = deciBin()
print("二进制数:%s" % two)
3、运行结果
请输入一个十进制数:8
二进制数:0b1000
C. python二进制转十进制算法是怎么样的
二进制数转换成十进制数:二进制数从右向左每位数乘以2的次方(从0开始,从右向左依次+1),然后相加求和即可
如:0101转成十进制为:1*20+0*21+1*22+0*23=1+0+4+0=5
算法实现:
#coding=utf-8
b=raw_input("请输入一个二进制数:".decode("utf-8").encode("gbk"))
sum=0
for i in range(len(b)):
sum+=int(b[len(b)-1-i])*pow(2,i)
print u"转换成十进制数是:",sum
二进制数转换成十进制数
由二进制数转换成十进制数的基本做法是,把二进制数首先写成加权系数展开式,然后按十进制加法规则求和。这种做法称为"按权相加"法。 例1105 把二进制数110.11转换成十进制数。
十进制数转换为二进制数时,由于整数和小数的转换方法不同,所以先将十进制数的整数部分和小数部分分别转换后,再加以合并。
以上内容参考:网络-十进制
D. 如何用Python将十进制数字转为二进制,以及将二进制转为十六进制
1、将十进制转换成二进制,利用bin()方法。
E. Python语言编程实现由十进制数到二进制数的转换
#!/usr/bin/python
#-*-coding:utf-8-*-
#@Time:2018/6/1814:04
#@File:Dec_To_Bin.py
"""
description
"""
defdec2bin(string_num):
num=int(string_num)
mid=[]
whileTrue:
ifnum==0:
break
num,rem=divmod(num,2)
mid.append(rem)
return''.join([str(x)forxinmid[::-1]])
if__name__=='__main__':
anum=raw_input(u'请输入要转换的数字:')
printu'该数字转换为二进制后是:{}'.format(dec2bin(anum))
F. 怎么用python 二进制 转换 十进制
二进制转十进制,十进制转二进制的算法
十进制转二进制:
用2辗转相除至结果为1
将余数和最后的1从下向上倒序写 就是结果
例如302
302/2 = 151 余0
151/2 = 75 余1
75/2 = 37 余1
37/2 = 18 余1
18/2 = 9 余0
9/2 = 4 余1
4/2 = 2 余0
2/2 = 1 余0
故二进制为100101110
二进制转十进制
从最后一位开始算,依次列为第0、1、2...位
第n位的数(0或1)乘以2的n次方
得到的结果相加就是答案
例如:01101011.转十进制:
第0位:1乘2的0次方=1
1乘2的1次方=2
0乘2的2次方=0
1乘2的3次方=8
0乘2的4次方=0
1乘2的5次方=32
1乘2的6次方=64
0乘2的7次方=0
然后:1+2+0
+8+0+32+64+0=107.
二进制01101011=十进制107.
一、二进制数转换成十进制数
由二进制数转换成十进制数的基本做法是,把二进制数首先写成加权系数展开式,然后按十进制加法规则求和。这种做法称为"按权相加"法。
二、十进制数转换为二进制数
十进制数转换为二进制数时,由于整数和小数的转换方法不同,所以先将十进制数的整数部分和小数部分分别转换后,再加以合并。
1. 十进制整数转换为二进制整数
十进制整数转换为二进制整数采用"除2取余,逆序排列"法。具体做法是:用2去除十进制整数,可以得到一个商和余数;再用2去除商,又会得到一个商和余数,如此进行,直到商为零时为止,然后把先得到的余数作为二进制数的低位有效位,后得到的余数作为二进制数的高位有效位,依次排列起来。
2.十进制小数转换为二进制小数
十进制小数转换成二进制小数采用"乘2取整,顺序排列"法。具体做法是:用2乘十进制小数,可以得到积,将积的整数部分取出,再用2乘余下的小数部分,又得到一个积,再将积的整数部分取出,如此进行,直到积中的小数部分为零,或者达到所要求的精度为止。
然后把取出的整数部分按顺序排列起来,先取的整数作为二进制小数的高位有效位,后取的整数作为低位有效位。
回答者:HackerKinsn - 试用期 一级 2-24 13:31
1.二进制与十进制的转换
(1)二进制转十进制
方法:"按权展开求和"
例:
(1011.01)2 =(1×23+0×22+1×21+1×20+0×2-1+1×2-2)10
=(8+0+2+1+0+0.25)10
=(11.25)10
(2)十进制转二进制
· 十进制整数转二进制数:"除以2取余,逆序输出"
例: (89)10=(1011001)2
2 89
2 44 …… 1
2 22 …… 0
2 11 …… 0
2 5 …… 1
2 2 …… 1
2 1 …… 0
0 …… 1
· 十进制小数转二进制数:"乘以2取整,顺序输出"
例:
(0.625)10= (0.101)2
0.625
X 2
1.25
X 2
0.5
X 2
1.0
2.八进制与二进制的转换
例:将八进制的37.416转换成二进制数:
37 . 4 1 6
011 111 .100 001 110
即:(37.416)8 =(11111.10000111)2
例:将二进制的10110.0011 转换成八进制:
0 1 0 1 1 0 . 0 0 1 1 0 0
2 6 . 1 4
即:(10110.011)2 =(26.14)8
3.十六进制与二进制的转换
例:将十六进制数5DF.9 转换成二进制:
5 D F . 9
0101 1101 1111.1001
即:(5DF.9)16 =(10111011111.1001)2
例:将二进制数1100001.111 转换成十六进制:
0110 0001 . 1110
6 1 . E
即:(1100001.111)2 =(61.E)16
G. python十进制转二进制数组求解,急
def uint2vec(n,Leng=8,Radix=2):
s = []
for i in range(Leng):
s = [n % Radix] +s
n //= Radix
return s
H. python十进制转二进制3位数
设 num1 为123,通过 type( ) 可以看到类型为 int
使用 bin( ) 函数将 num1 转换为二进制,返回值存入 bin_num1
但 num1 本身没有改变,返回的 bin_num1 是二进制表示,但 bin_num1类型是 str
I. 用Python语言编程实现由十进制数到二进制数的转换
给个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; } else a[i]=0; i++; Dcount++; } }void Out() { cout<<"2进制数为:"; for(int i=Icount-1;i>=0;i--) cout<<a[i]; cout<<"."; for(int j=Icount;j<Icount+Dcount;j++) 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); else cout<<"0"; if(I>0 || D>0) Out(
J. 编写一个python程序转换十进制整数到二进制整数的转换
bin函数可以直接转换。不过开头有0b两个字符,可以用切片显示后面部分。
print(bin(int(input()))[2:])
如果非要用纯代码转换就用循环。
n=int(input())
ans=''
while n%2!=0:
缩进s+=n%2
缩进n//=2
print(ans[::-1])