Seite 1 von 1

Newline in Python entfernen

Verfasst: Freitag 18. Dezember 2020, 13:50
von Pielinho
Hallo zusammen. Ich habe folgenden Code geschrieben, der an sich richtig ist, allerdings am Ende immer eine Newline Character mit ausgibt, der meine Lösung falsch werden lässt.
Beispiel: mit input(6) gibt das Programm (011) raus und einen Newlinecharacter am Ende. Da ich die Aufgabe online hochladen muss, führt der newline character dazu, dass meine Aufgabe als falsch gewertet wird. Hat jemand eine Idee woran das liegen könnte? Danke.


x = int(input())

while int(x) > 0:
print(int(x % 2), end="")
x = x/2

Re: Newline in Python entfernen

Verfasst: Samstag 19. Dezember 2020, 10:21
von ThomasL
Also wenn du das Argument end="" verwendest, wird kein Newline nach der Ausgabe gesendet.
Du kannst dir die Schleife auch sparen

Code: Alles auswählen

x = int(input())
print(f'{x:b}'[::-1], end='')
wenn du denn die binäre Darstellung deines eingegebenen Wertes in umgekehrter Reihenfolge haben willst.

Re: Newline in Python entfernen

Verfasst: Samstag 19. Dezember 2020, 11:18
von Sirius3
Statt ständig zwischen float und int hin und her zu konvertieren, solltest Du Ganzzahldivision verwenden:

Code: Alles auswählen

n = int(input())

while n > 0:
    print(n % 2, end="")
    n //= 2
Ist es Absicht, dass bei Eingabe von 0 nichts ausgegeben wird?