Fakultät mit for/while -Schleife?

3 Antworten

Ein Ansatz könnte ungefähr so aussehen:

n = 5

#if n <= 1: print 1
#else:
n += 1
x = 1
for i in range(2, n):
x*= i

#i = 2
#while i <= n:
#x*= i

print ("Fakultät von ", str(n), " ist ", str(x))

Rechne 2-3 erdachte, konkrete Fakultätsaufgaben aus und beschreibe dazu dann den generellen Rechenweg Schritt für Schritt.

1) addiere dies
2) subtrahiere jenes
3) multipliziere so oft, wie ...
4) ...

Beachte auch Sonderfälle, bspw. das Ergebnis von 0!.

Bei Bedarf kannst du dir zusätzlich noch ein Aktivitätsdiagramm anlegen. Das Ergebnis kannst du folgend in Python-Code übersetzen und testen.

Du brauchst weder Schleifen noch Importe, wenn du einfach die Definition der Fakultät mittels Rekursion implementierst:

0! = 1,

n! = n * (n-1)!