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

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

Zuerst klären wie die Mathematische Berechnung funktioniert.

Dann die einzelnen mathematischen Schritte im Code nachstellen

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