Kann mir jemand helfen, was hier falsch ist?
_______________________
# Initialisierung der Variablen
def umrechnen(wert):
zahl = 0
zwischenergebnis = 0
summe = 0
# eine Liste für die Reste
liste = []
# den Wert einlesen
wert = int(input("Geben Sie eine Dualzahl ein, die umgerechnet werden soll: "))
# die Schleife
while wert > 0:
zwischenergebnis = wert%10
zwischenergebnis = zwischenergebnis*(2**zahl)
liste.append(zwischenergebnis)
zahl = zahl + 1
wert = wert//10
for wert in liste:
summe = summe + wert
# und ausgeben
print("Das Ergebnis der Umrechnung lautet", + summe)
umrechnen(wert)
______________________________
Vom Binär ins Dezimalsystem
- noisefloor
- User
- Beiträge: 3856
- Registriert: Mittwoch 17. Oktober 2007, 21:40
- Wohnort: WW
- Kontaktdaten:
Hallo,
bitte den Code in einen Codeblock setzen, damit der Code auch lesbar ist. Den Codeblock bekommst du, indem du in der Menüleiste über dem Eingabefenster auf die </> Schaltfläche klickst.
Was funktioniert denn an deinem Code nicht so, wie du es gerne hättest?
Gruß, noisefloor
bitte den Code in einen Codeblock setzen, damit der Code auch lesbar ist. Den Codeblock bekommst du, indem du in der Menüleiste über dem Eingabefenster auf die </> Schaltfläche klickst.
Was funktioniert denn an deinem Code nicht so, wie du es gerne hättest?
Gruß, noisefloor
- __blackjack__
- User
- Beiträge: 13110
- Registriert: Samstag 2. Juni 2018, 10:21
- Wohnort: 127.0.0.1
- Kontaktdaten:
Von Binärdarstellung zu ganzer Zahl und von da zur Dezimaldarstellung geht sehr einfach mit `int()` und `str()`. Da braucht man wenig eigenen Code schreiben. `str()` braucht man nicht einmal explizit wenn man die ganze Zahl mit `print()` oder etwas ähnlichem ausgibt, wo eine Umwandlung in eine Zeichenkette schon drin steckt.
„All religions are the same: religion is basically guilt, with different holidays.” — Cathy Ladman
- __blackjack__
- User
- Beiträge: 13110
- Registriert: Samstag 2. Juni 2018, 10:21
- Wohnort: 127.0.0.1
- Kontaktdaten:
Simple Lösung ohne Fehlerbehandlung:
Code: Alles auswählen
#!/usr/bin/env python3
def main():
print(
int(
input(
"Geben Sie eine Dualzahl ein, die umgerechnet werden soll: "
),
2,
)
)
if __name__ == "__main__":
main()
„All religions are the same: religion is basically guilt, with different holidays.” — Cathy Ladman