我正在写一个十进制到二进制转换器,这是我当前的代码:
所有这些都按预期工作。当用户输入十进制值(例如10)时,它将返回二进制数1010.
我试图添加到此的方法是,如果用户输入十进制值10,则会为之前和之前的所有数字创建二进制数。
示例:
User inputs 10
Decimal: 1 binary: 1
Decimal: 2 binary: 10
Decimal: 3 binary: 11
Decimal: 4 binary: 100
(so on, until)
Decimal: 10 binary: 1010
我已尝试使用for循环和范围功能,但似乎无法使其正常工作。
答案 0 :(得分:1)
以下代码段是否有帮助? 不确定这是不是你的问题。
n = 10
for i in range(n):
print bin(i)
所以你可以让你的二进制翻译成为一个函数,并重复调用它
def my_bin(stuff_to_convert):
result = '?' # TODO: your conversion goes here
return result
n = int(input("number please:"))
for i in range(n + 1):
binary_number = my_bin(i)
答案 1 :(得分:1)
您可以将十进制到二进制转换为函数,将函数放入循环中,然后使用用于循环的迭代器调用函数。
这样的事可能
def decimalToBinary(input):
#here you would put that main loop that you had in your code
pass
decimal=inputNumber
i=0
while(i<=decimal)
decimalToBinary(i)
i += 1
这样的事情不仅使你的代码更有用,因为你现在有一个将十进制转换为二进制的函数,你可以在其他地方使用它,但它也使它更清晰,更容易阅读。此外,请记住在您的代码中添加注释,以便我们更容易阅读,并使用标记将您的代码直接放在您的问题中以便于参考! :d