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

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)?

#1
vote_ok
von jigga (4260 Punkte) - 23.02.2017 um 13:43 Uhr
Quellcode ausblenden Python-Code
def f(n):
    
    zahl=''
    
    for i in range(n,0,-1):
        zahl += format(i,'b')
    return int(zahl,2)

while True:

    z = int(input("Zahl (int) eingeben: "))
    print("f(" + str(z) + ") = " + "{:,}".format(f(z)).replace(",","."))
    
    nochmal = input("Nochmal? (y/n)")
    print()
    if nochmal == 'y' or nochmal == 'Y':
        continue
    else:
        break

Kommentare:

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

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

Du scheinst einen AdBlocker zu nutzen. Ich würde mich freuen, wenn du ihn auf dieser Seite deaktivierst und dich davon überzeugst, dass die Werbung hier nicht störend ist.