Gepostet: |
unter Verwendung eines Faltungs-Operators und eines Lambda-Ausdrucks eine Zahl in Binärdarstellung in ihre Dezimaldarstellung umwandeln | ||||||||||
Hier kann man dezimale Zahlen in binäre Zahlen umwandeln aber wie kann man unter Verwendung eines Faltungs-Operators und eines Lambda-Ausdrucks eine Funktion bintodec, die eine Zahl in Binärdarstellung in ihre Dezimaldarstellung umwandelt. Darau kann ich nicht kommen...
|
|||||||||||
Zum Seitenanfang | |||||||||||
Gepostet: |
|||||||||||
Meinst du sowas?
|
|||||||||||
Zum Seitenanfang | |||||||||||
Gepostet: |
|||||||||||
Perfekt. Danke schön | |||||||||||
Zum Seitenanfang | |||||||||||
Gepostet: |
|||||||||||
Nebenbei bemerkt gibt es auch die \"umgekehrte\" Operation zu einem Fold, nämlich unfoldr. Allerdings muss man ein Maybe zurückgeben, damit die Funktion weiß, wann die Liste \"fertig\" ist:
Deine Version ist übrigens durch das dauernde (++) ziemlich ineffizient. In solchen Fällen ist es besser, vorne anzuhängen und einmal am Ende alles umzudrehen. Das senkt den Aufwand von O(n²) auf O(n). |
|||||||||||
Zum Seitenanfang | |||||||||||