2016-05-01 11 views
-2

ich eine Dezimalzahl in Binär-Wandler zu schreiben, hier ist mein aktueller Code:Rookie mit Looping und die Range-Funktion benötigen Hilfe

All dies funktioniert wie vorgesehen. Wenn ein Benutzer einen Dezimalwert (z. B. 10) eingibt, gibt er die Binärzahl 1010 zurück.

Was ich hinzufügen möchte, ist ein Weg, so dass, wenn ein Benutzer den Dezimalwert 10 eingibt, eine Binärzahl für alle Zahlen vor erstellt und bis 10.

Beispiel:

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 

ich mit for-Schleifen und die Range-Funktion experimentiert haben, aber kann nicht scheinen, es zum Laufen zu bringen.

+3

Setzen Sie bitte Ihren Code in die Frage –

+1

Bitte geben Sie hier Ihren Code ein, und zwar in einem [minimalen, vollständigen und überprüfbaren Beispiel] (http://stackoverflow.com/help/mcve). – schwobaseggl

+1

Mögliches Duplikat von [Pyhon: Binäres Zählen ohne eingebaute Funktionen] (http://stackoverflow.com/questions/36928212/pyhon-binary-counting-without-use-inbuilt-functions) – schwobaseggl

Antwort

1

hilft die folgende Code-Snippet-Hilfe? nicht sicher, ob das wirklich dein Problem ist.

n = 10 
for i in range(n): 
    print bin(i) 

so können Sie Ihre Binärübersetzung eine Funktion, machen und nennen es wiederholt

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

Sie könnten Ihre Dezimalzahl in Binär-Wandler in eine Funktion, legen Sie die Funktion in einer Schleife machen, und dann rufen die Funktion mit dem Iterator, den Sie für die Schleife verwenden.

So etwas wie dies vielleicht

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 

So etwas macht nicht nur Ihren Code mehr verwendbar, da Sie nun eine Funktion haben, die dezimal zu binär umwandelt, die Sie an anderer Stelle verwenden können, aber es macht es auch klarer und leichter lesen. Denken Sie auch daran, Kommentare in Ihren Code zu schreiben, damit wir sie leichter lesen können, und verwenden Sie Tags, um Ihren Code direkt in Ihre Frage einzugeben, damit Sie ihn leichter finden können! : D

+0

Python-Code ist ausführlich genug Ich bin mir nicht sicher, dass psudocode hier notwendig ist, "i + = 1" wäre in Ordnung. –

+0

Verstanden. Ich werde bearbeiten, wenn ich auf meinen Desktop komme. – Graf