Python Code zur Berechnung der Fakultät einer Zahl.?

5 Antworten

Da gibt es unterschiedliche Ansätze, die man verfolgen kann.

Man könnte beispielsweise einfach iterativ die Zahlen von 1 bis n aufmultiplizieren...

def fak(n):
    f = 1
    for i in range(1, n+1):
        f *= i
    return(f)

Man könnte beispielsweise rekursiv vorgehen...

def fak(n):
    if n <= 1:
        return(1)
    else:
        return(n * fak(n-1))

Man könnte die Fakultätsfunktion aus dem math-Modul verwenden...

from math import factorial as fak

Das wären drei Möglichkeiten eine Fakultätsfunktion fak in Python zu erhalten.

============

Du kannst außerdem beispielsweise auf Wikipedia schauen. Da findest du auch Beispiele, die recht ähnlich zu den ersten beiden von mir genannten Beispielen sind:

https://de.wikipedia.org/wiki/Fakultät_(Mathematik)#Pythonprogramm

Zuerst klären wie die Mathematische Berechnung funktioniert.

Dann die einzelnen mathematischen Schritte im Code nachstellen

Na wie ist die Fakultät definiert?

4! = 1*2*3*4

Dieses Wissen anwenden, das ist dein Ansatz.

Achtung!

0! = 1 und nicht 0

Bzw. hat jemand Tipp wie ich hier anfangen kann?

Du überlegst dir, wie die Fakultät definiert ist. Offenbar muss man hier etwas wiederholt machen - wie kann man in Python etwas eine bestimmte Anzahl mal tun?

Du brauchst einen For oder eine while Schleife.

Woher ich das weiß:Studium / Ausbildung – Informatikstudent
MrAmazing2  03.11.2020, 13:07

Oder eine Funktion die sich selbst aufruft.

1