一、简介
由于最近学习计算机组成与结构里面的数据表示内容,经常要用到十进制与二进制互相转换,唉,网课期间日常赶ddl,哪还有心情去纸上算,干脆用一下python这个科学计算工具(虽然科学计算不是这么来用的)…
二、程序本程(program itself)
def convert1(n): #10->2
mstr=""
while(n!=0):
r=n%2
n//=2
mstr=str(r)+mstr
return mstr
def convert2(s): #2->10
res=0
weight=2**(len(s)-1)
for i in range(len(s)):
if s[i]=='1':
res+=weight
weight//=2
return res
while True:
print("----分界线-----")
print("选择10->2进制转换模式请输入数字1...\n选择2->10进制转换模式请输入数字2...\n选择退出请输入数字3")
selection=int(input())
#10->2进制转换
if selection==1:
print("@@@你已进入10->2进制转换模式@@@")
print("请输入一个十进制数字:")
n=int(input())
res=convert1(n)
print("转换后的结果为:",end="")
print(res)
elif selection==2:
print("@@@你已进入2->10进制转换模式@@@")
print("请输入一个二进制数字:")
bnum=input()
res=convert2(bnum)
print("转换后的结果为:",end="")
print(res)
elif selection==3:
print("程序已退出!!!")
break
else:
print("你输入了不合法的数字!")
continue
三、运行示例
1.模式1(十进制转换为二进制)
2.模式2(二进制转换为十进制)
3.模式3(检测输入是否合法以及退出程序)