吧啦哔哩啵 发表于 2021-3-24 22:17

二进制转换为十进制

请按照文件内的说明,完善代码,实现下面的功能:从键盘输入一个由1和0组成的二进制字符串s,转换为十进制数显示在屏幕上,实例如下:
输入:
请输入一个由1和0组成的二进制数字串:1101
输出:
转换成十进制数是:13
s = input("请输入一个由1和0组成的二进制数字串:")
d = ____(1)_____
while s:
    d = ____(2)___
    s = s
    print("转换成是十进制数是:{}".format(____(3)____))

刀锋浪子 发表于 2021-3-24 22:35

我不懂语言,但计算方式是2的3次方加2的平方加1
就是2的位数减1次方相加
希望能对你有帮助

super.me 发表于 2021-3-24 22:52

这是什么语言???

尘叶云渡 发表于 2021-3-24 23:18

s = input("请输入一个由1和0组成的二进制数字串:")
d = 0
while s:
    d = eval(s)*pow(2,len(s)-1)+d
    s = s
print("转换成是十进制数是:{}".format(d))# print 语句调整到循环外

刀锋浪子 发表于 2021-3-24 23:23

尘叶云渡 发表于 2021-3-24 23:18
s = input("请输入一个由1和0组成的二进制数字串:")
d = 0
while s:


我就是这个意思,函数太重要了

苏紫方璇 发表于 2021-3-24 23:25

s = input("请输入一个由1和0组成的二进制数字串:")
d = 0
while s:
    d = d + int(s) * 2**(len(s)-1)
    s = s
print("转换成是十进制数是:{}".format(d))
       

爱飞的猫 发表于 2021-3-25 03:53

作业还是要自己写才好。

s = input("请输入一个由1和0组成的二进制数字串:")
d = 0
while s:
        d = d * 2 + int(s)
        s = s
print("转换成是十进制数是:{}".format(d))
页: [1]
查看完整版本: 二进制转换为十进制