Python :: Aufgabe #144 :: Lösung #5

5 Lösungen Lösungen öffentlich
#144

Funktion über eine Natürliche Zahl

Anfänger - Python von hollst - 20.02.2017 um 09:02 Uhr
Man schreibe ein Funktion f(n) mit dem Definitionsbereich (n) und dem Wertebereich (f(n)) der natürlichen Zahlen.

Die Funktion f(n) sei wie folgt zu konstruieren:

1.) Schreibe die Zahlen 1 ... n in absteigender Reihenfolge nebeneinander: n, n - 1, n - 2 ... 5, 4, 3, 2, 1
2.) Wandle diese Zahlen in ihre binärer Darstellen ohne führende Nullen: n, n - 1, n -2 ... 101, 100, 11, 10, 1
3.) Entferne jetzt das Komma zwischen den Binärzahlen, die sich damit ergebende neue Binärzahl ist f(n).

Beispiel: f(6) => 6, 5, 4, 3, 2, 1 => 110, 101, 100, 11, 10, 1 => 11010110011101 = 13725 (dezimal).

Fragen: Welchen Wert hat f(99)?

#5
vote_ok
von satn1241 (3090 Punkte) - 03.04.2020 um 14:07 Uhr
Quellcode ausblenden Python-Code
def binary(number):
    return int(''.join(bin(number).split('0b')))

zahl = 99
a = ""
liste = list(range(zahl,0,-1))
for i in range(0,len(liste)):
    liste[i] = binary(liste[i])
    a = a + str(liste[i])
print("Die Liste ist:", liste)
print("Die aneinandergereite Zahl ist:",a)
print("Die transformierte Zahl ist:",int(a,2))


Kommentare:

Für diese Lösung gibt es noch keinen Kommentar

Bitte melden Sie sich an um eine Kommentar zu schreiben.
Kommentar schreiben