繁体   English   中英

Python:二进制计数,不使用内置函数

[英]Python: Binary Counting without using inbuilt functions

我最近遇到了一些麻烦,创建了一个从1到所选数字的二进制计数程序。

这是我目前的代码:

num6 = 1
binStr = ''
num5 = input('Please enter a number to be counted to:')
while num5 != num6:
    binStr = str(num6 % 2) + binStr
    num6 //= 2

    num6 = num6 + 1

print(binStr)

例如,如果我输入5,它需要1,10,11,100,101。我似乎无法得到它的悬念。 任何帮助将不胜感激,谢谢。

问题是你要将num6与输入数无关。 您不需要计算除数的次数,这样您就可以将num5除以2并取余数。 我将你的binary_to_string放在一个函数中,并为你的输入值调用每个数字:

num5 = int(input('Please enter a number to be counted to:'))
for i in range(num5 + 1):
    binStr = ""
    decimal_number = i
    while decimal_number > 0:
        binStr = str(decimal_number % 2) + binStr
        decimal_number //= 2
    print(binStr)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM