Seite 2 von 2

Re:

Verfasst: Montag 1. Juni 2020, 19:32
von MortalWombat
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

Re: Fakultät berechnen

Verfasst: Montag 1. Juni 2020, 19:42
von __blackjack__
@MortalWombat: Weil das verirrend ist den gleichen Namen für verschiedene Dinge im gleichen Namensraum zu verwenden.

Re: Fakultät berechnen

Verfasst: Montag 1. Juni 2020, 19:49
von MortalWombat
Hm, sowas in der Art habe ich mir schon gedacht, danke.