最近我創建一個程序,它從1到所選數字的二進制數進行計數,一直有一些麻煩。Python:不使用內置函數的二進制計數
這是我的代碼的時刻:
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 我似乎無法得到它的竅門。任何幫助將不勝感激,謝謝。
你的代碼沒有意義。試着解釋你的邏輯,你可能會發現你自己這樣做的問題...例如,如果num5是0,會發生什麼...... – Julien
@mattsap你提到的問題明確要求內置的,這與OP想要的是相反的。然而,確實有些答案確實給出了非內建實現。但我相信OP也希望瞭解他*代碼的問題,而不是僅僅複印一份答案。 – Julien
也不清楚二進制計數是什麼意思。請添加預期結果的示例。 – Julien