Fakultät berechnen

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
MortalWombat
User
Beiträge: 19
Registriert: Sonntag 1. Dezember 2019, 15:02

Frank aka Ch3ck3r hat geschrieben: Mittwoch 14. November 2007, 19:19 also ich würde es so lösen xD

Code: Alles auswählen

def fakult(n):
    #Für Re- hat die Fakultät keine Wertemenge
    if n < 0:
        raise ValueError
    #Nach Definition ist 0! = 1
    if n == 0:
        return 1
    #Ansonten wird hier die Fakultät ausgerechnet
    else:
        save = 1
        for i in range(2,n+1):
            save *= i
        return save
Diese Lösung habe ich schon ziemlich oft gefunden. In Büchern und Skripten wird es meist so gemacht. Weshalb überschreibe ich nicht einfach die Variable n derart, daß ich n zurückgeben kann?

Code: Alles auswählen

def fakult(n):
    #Für Re- hat die Fakultät keine Wertemenge
    if n < 0:
        raise ValueError
    #Nach Definition ist 0! = 1
    if n == 0:
        return 1
    #Ansonten wird hier die Fakultät ausgerechnet
    else:
        for i in range(1,n):
            n *= i
        return n
Benutzeravatar
__blackjack__
User
Beiträge: 14007
Registriert: Samstag 2. Juni 2018, 10:21
Wohnort: 127.0.0.1
Kontaktdaten:

@MortalWombat: Weil das verirrend ist den gleichen Namen für verschiedene Dinge im gleichen Namensraum zu verwenden.
“The best book on programming for the layman is »Alice in Wonderland«; but that's because it's the best book on anything for the layman.” — Alan J. Perlis
MortalWombat
User
Beiträge: 19
Registriert: Sonntag 1. Dezember 2019, 15:02

Hm, sowas in der Art habe ich mir schon gedacht, danke.
Antworten